$user->hasTfa() method

Does user have two-factor authentication (Tfa) enabled? (and what type?)

  • Returns boolean false if not enabled.
  • Returns string with Tfa module name (string) if enabled.
  • When $getInstance argument is true, returns Tfa module instance rather than module name.

The benefit of using this method is that it can identify if Tfa is enabled without fully initializing a Tfa module that would attach hooks, etc. So when you only need to know if Tfa is enabled for a user, this method is more efficient than accessing $user->tfa_type.

When using $getInstance to return module instance, note that the module instance might not be initialized (hooks not added, etc.). To retrieve an initialized instance, you can get it from $user->tfa_type rather than calling this method.

Available since version 3.0.162.


// basic usage
$bool = $user->hasTfa();

// usage with all arguments
$bool = $user->hasTfa(bool $getInstance = false);


getInstance (optional)bool

Get Tfa module instance when available? (default=false)

Return value

bool string Tfa

$user methods and properties

API reference based on ProcessWire core version 3.0.234

Latest news

  • ProcessWire Weekly #511
    In the 511th issue of ProcessWire Weekly we'll cover the latest core updates, introduce a new third party module called Auto AVIF, and more. Read on!
    Weekly.pw / 25 February 2024
  • Using date range fields in ProcessWire
    This week we'll take a detailed look at the newest addition to the ProFields set of modules: the Date Range Fieldtype and Inputfield.
    Blog / 24 November 2023
  • Subscribe to weekly ProcessWire news

“We chose ProcessWire because of its excellent architecture, modular extensibility and the internal API. The CMS offers the necessary flexibility and performance for such a complex website like superbude.de. ProcessWire offers options that are only available for larger systems, such as Drupal, and allows a much slimmer development process.” —xport communication GmbH