Skip to content
  • Log In
  • Register
WordPress.org

SiSwati

  • Themes
  • Plugins
  • About
  • Get WordPress
Get WordPress

Plugins

  • My Favorites
  • Beta Testing
  • Developers

This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

Download

WP-OTP

By Armando Lüscher
  • Details
  • Reviews
  • Installation
  • Development
Support

Description

With WP-OTP you can easily set up 2 Factor Authentication with One Time Passwords for your WordPress login.
This extra layer makes your WordPress site a lot more secure.

The new stealth mode allows for invisible OTP code entry, making your login screen look like any other, no extra OTP code input field.

Getting started

After installing and activating the plugin, every user can enable WP-OTP on their profile page.

It’s as easy as scanning the provided QR Code or entering the OTP secret to any OTP generator app.
Then just activate it by entering the generated OTP and voilà, all set up.
Now, the login requires an OTP code to succeed.

Each user gets their own secret key to authenticate with, giving them control over their login security.

Development

This plugin is completely open source and a work of passion.
If you would like to be part of it and join in, make your way over to the project page now.
Also, if you have an idea you would like to see in this plugin or if you’ve found a bug, please let me know.

Configuration

  • WP_OTP_STEALTH: Set this to true to enable stealth OTP mode.

Filters

There are a multitude of filters to be adjusted.

  • wp_otp_qr_code_provisioning_uri: URI for online QR Code rendering (must contain {PROVISIONING_URI} placeholder for QR Code data).
  • wp_otp_login_form_text: Text for input field on the login screen.
  • wp_otp_login_form_text_sub: Subtext for the input field on the login screen.
  • wp_otp_login_form_invalid_code_text: Error text for an invalid code input on the login screen.
  • wp_otp_code_expiration_window: Set the window of code verification expiration.
  • wp_otp_recovery_codes_count: Number of recovery codes to generate.
  • wp_otp_recovery_codes_length: Length of the recovery codes.
  • wp_otp_secret_length: Length of the secret key.

Minimum requirements

WordPress 4.6, PHP 7.4.

Donate / Support

All donations are much appreciated, thank you 🙏

Get professional support for this plugin with a Tidelift subscription
Tidelift helps make open source sustainable for maintainers while giving companies assurances about security, maintenance, and licensing for their dependencies.

Security

To report a security vulnerability, please use the Tidelift security contact. Tidelift will coordinate the fix and disclosure.

Installation

You can either use the built in WordPress installer or install the plugin manually.

For an automated installation:

  1. Go to ‘Plugins -> Add New’ on your WordPress Admin page.
  2. Search for the ‘WP OTP’ plugin.
  3. Install by clicking the ‘Install Now’ button.
  4. Activate the plugin on the ‘Plugins’ page in your WordPress Admin.

For a manual installation:

  1. Upload the ‘wp-otp’ folder to the plugins directory of your WordPress installation.
  2. Activate the plugin on the ‘Plugins’ page in your WordPress Admin.

FAQ

What if I lose my OTP authenticator?

No problem! When activating WP-OTP, you will also get a list of recovery codes that you can use instead of entering the OTP from your authenticator app.
Be sure to regenerate them when you run out though, or better yet, reconfigure your WP-OTP to get a new secret and a new set of recovery codes.

Can I reset my OTP secret key?

Yes, just click the Reconfigure button on the profile page.

Why is there no OTP input field on the login form?

Your site admin has either disabled the plugin or enabled stealth mode.
This means that you will need to add your OTP (or recovery) code at the end of your password.

Reviews

Works like a breeze

slippingjimmy May 24, 2022
Light and efficient!

Does not do anything

info2 July 23, 2021
I installed and activated the plugin, but it had no effect at all

Very good plugin and nice support

datnv9 December 4, 2020
Thank you for this nice plugin. Stealth mode is perfect!

The link you followed has expired.Please try again.

ramineros August 1, 2020 2 replies
The link you followed has expired.Please try again. i did everything to fix this problem but could not do.. when i want to activate this plugin it gives this error.. i use dedicated server.. and i can install any other plugins easely

Nice Work good plugin

mydeenferozkhan November 20, 2019 1 reply
In this Update 0.4.0 there is an error while trying to login. it shows critical error. IT works for the user which i logged in and update the plugins. It throws error other users while logging. please fix it and update the plugin. When seeking help with this issue, you may be asked for some of the following information: WordPress version 5.3 Current theme: Nex Child (version ) Current plugin: WP-OTP (version 0.4.0) PHP version 7.2.15 Error Details ============= An error of type E_ERROR was caused in line 180 of the file /var/www/wp-content/plugins/wp-otp/public/class-wp-otp-public.php. Error message: Uncaught TypeError: Return value of Wp_Otp\Wp_Otp_Public::get_otp_if_enabled() must be an instance of OTPHP\TOTP, null returned in /var/www/wp-content/plugins/wp-otp/public/class-wp-otp-public.php:180 Stack trace: If you need more details i will share the error mail igot.

Profilseite funktioniert seit 0.2 nicht mehr…

Michael December 10, 2018 2 replies
… und damit lässt sich das Plugin nicht mehr konfigurieren. Keine Reaktion vom Autor. Update vom 10.12.18: Weil es jetzt wieder funktioniert auf 5 Sterne aktualisert. Funktioniert sehr zuverlässig.
Read all 8 reviews

Contributors & Developers

“WP-OTP” is open source software. The following people have contributed to this plugin.

Contributors
  • noplanman

“WP-OTP” has been translated into 5 locales. Thank you to the translators for their contributions.

Translate “WP-OTP” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

0.6.1

  • Fix nonce issue when saving profile.

0.6.0

  • Require at least PHP 7.4 and update all code.
  • Allow for PHP 8.0.
  • Bump dependencies.

0.5.1

  • Fix activation and deactivation hooks.

0.5.0

  • Require at least PHP 7.2.
  • Update OTPHP to 10.0.
  • Add native QR code rendering.
  • Harden security by adhering to WordPress Code Sniffer.

0.4.1

  • Fix nullable return type when checking if OTP is enabled.

0.4.0

  • Drop all custom i18n and rely on translate.wordpress.org.
  • Minimum requirements are now WP 4.6 and PHP 7.1.
  • Update OTPHP to 9.1.
  • Tested for WP 5.3.

0.3.0

  • Update list of OTP mobile apps.
  • Add stealth mode (via WP_OTP_STEALTH), passing OTP code concatenated to password.
  • Add donation, support and security sections to readme.

0.2.1

  • Add GitLab CI for PHP Code Sniffer.
  • Fix changed Base32 namespace.

0.2.0

  • Tested for WP 5.0.
  • Update OTPHP to 8.3.3.
  • Moved project to Feneas GitLab (git.feneas.org)

0.1.4

  • Tested for WP 4.8.
  • Update OTPHP to 8.3.0.

0.1.3

  • Make OTP code input a normal text field, to allow input verification.

0.1.2

  • Add proper localisation.

0.1.1

  • Longer secret by default.
  • Replace/override packages not compatible with WordPress.

0.1.0

  • First version!

Meta

  • Version: 0.6.1
  • Last updated: 2 years ago
  • Active installations: 100+
  • WordPress Version: 4.6 or higher
  • Tested up to: 5.6.10
  • PHP Version: 7.4 or higher
  • Languages:

    Basque, English (US), German, Japanese, Spanish (Argentina), and Swedish.

    Translate into your language

  • Tags:
    2FAloginotptotptwo factor
  • Advanced View

Ratings

See all
  • 5 stars 5
  • 4 stars 1
  • 3 stars 0
  • 2 stars 0
  • 1 star 2
Log in to submit a review.

Contributors

  • noplanman

Support

Issues resolved in last two months:

1 out of 1

View support forum

Donate

Would you like to support the advancement of this plugin?

Donate to this plugin

  • About
  • News
  • Hosting
  • Donate
  • Swag
  • Documentation
  • Developers
  • Get Involved
  • Learn
  • Showcase
  • Plugins
  • Themes
  • Patterns
  • WordCamp
  • WordPress.TV
  • BuddyPress
  • bbPress
  • WordPress.com
  • Matt
  • Privacy
  • Public Code
WordPress.org
WordPress.org

SiSwati

  • Visit our Facebook page
  • Visit our Twitter account
  • Visit our Instagram account
  • Visit our LinkedIn account
Code is Poetry.