跳至主要內容
WordPress.org

Taiwan 正體中文

  • 佈景主題目錄
  • 外掛目錄
  • 最新消息
  • 技術支援
  • 關於我們
  • 團隊
  • 取得 WordPress
取得 WordPress
WordPress.org

Plugin Directory

Loqwall 2FA

  • 提交外掛
  • 我的最愛
  • 登入
  • 提交外掛
  • 我的最愛
  • 登入

Loqwall 2FA

由 mohamedelaaouam99 開發
下載
  • 詳細資料
  • 使用者評論
  • 安裝方式
  • 開發資訊
技術支援

外掛說明

Loqwall 2FA adds a secure second authentication step after the standard WordPress username/password login. After entering their credentials, users must verify their identity with a one-time code before gaining access.

Features

  • Email OTP — a 6-digit code is sent to the user’s registered email address.
  • Authenticator App (TOTP) — time-based codes compatible with Google Authenticator, Authy, Bitwarden, and any RFC 6238 app.
  • Backup codes — 10 one-time recovery codes generated per user.
  • Device trust — optionally remember a trusted device for up to 30 days.
  • Role enforcement — admins can be required to use 2FA regardless of their personal preference.
  • Per-user control — users enable and configure 2FA from their own profile page.
  • Rate limiting — brute-force protection on OTP verification.
  • Audit log — every authentication event is recorded in a private database table.
  • No external dependencies — all cryptographic operations use PHP’s built-in functions. No Composer, no remote APIs.
  • Developer-friendly — hooks and filters let you customise behaviour without modifying plugin files.

For Developers: Hooks & Filters

Filters

Loqwall_2FA_required_for_user

Runs on every login attempt. Return false to exempt a user, or true to force 2FA regardless of settings.

add_filter( 'Loqwall_2FA_required_for_user', function( $required, $user ) {
    // Exempt the user with ID 5 from 2FA.
    if ( 5 === $user->ID ) {
        return false;
    }
    return $required;
}, 10, 2 );

Loqwall_2FA_otp_email_message

Filters the email body before the OTP is sent. Receives the body string, the WP_User object, the plain-text 6-digit code, and a boolean indicating whether the email is HTML.

add_filter( 'Loqwall_2FA_otp_email_message', function( $body, $user, $code, $html_mode ) {
    // Append a custom footer to every OTP email.
    return $body . '<p>Need help? Contact support@example.com</p>';
}, 10, 4 );

Actions

Loqwall_2FA_verified

Fires immediately after a user successfully passes 2FA. Receives the user ID and the method used ('email', 'totp', or 'backup_code').

add_action( 'Loqwall_2FA_verified', function( $user_id, $method ) {
    // Log the successful verification to a custom audit system.
    my_audit_log( $user_id, 'login_verified', $method );
}, 10, 2 );

Loqwall_2FA_failed

Fires after each failed 2FA verification attempt. Receives the user ID and the method attempted.

add_action( 'Loqwall_2FA_failed', function( $user_id, $method ) {
    // Notify an admin after a failed attempt.
    wp_mail( get_option('admin_email'), 'Failed 2FA attempt', "User #$user_id failed via $method." );
}, 10, 2 );<h3>Third Party Libraries</h3>

This plugin bundles the following third-party library:

qrcodejs
* Author: Sangmin Shim (davidshimjs)
* License: MIT
* Source: https://github.com/davidshimjs/qrcodejs
* Files: assets/js/qrcode.min.js, assets/js/qrcode.js
* Purpose: Renders the QR code displayed during Authenticator App setup. Used entirely client-side; makes no external network requests.

安裝方式

  1. Upload the oqwall-2fa folder to the /wp-content/plugins/ directory, or install the plugin through the Plugins > Add New screen in WordPress.
  2. Activate the plugin through the Plugins screen in WordPress.
  3. Navigate to Loqwall 2FA > Settings and enable Two-Factor Authentication.
  4. Each user can then visit their Profile page to set up their preferred 2FA method.

常見問題集

What 2FA methods are supported?

Email OTP (a 6-digit code emailed on each login) and Authenticator App (TOTP, RFC 6238), compatible with Google Authenticator, Authy, Bitwarden, and Microsoft Authenticator.

Can I force administrators to always use 2FA?

Yes. Enable the Force Admins option in Loqwall 2FA > Settings. Administrators will be required to complete 2FA regardless of their personal preference.

What happens if a user loses access to their 2FA method?

Each user has 10 one-time backup codes generated when they first set up 2FA. These can be regenerated by the user or by an administrator from the user profile page. An administrator can also disable 2FA for the user from their profile.

Does this plugin phone home or send any data externally?

No. The plugin makes no outbound HTTP requests. All data (logs, OTP hashes, device cookies) stays on your server.

Is this plugin multisite compatible?

Yes. The plugin works on standard single-site and multisite WordPress installations.

Which browsers are supported?

Any modern browser. The QR code for Authenticator App setup is rendered entirely client-side using the bundled qrcode.js library.

Where can I find the source code?

The full source code is available on the plugin’s WordPress.org repository page. The unminified version of the bundled qrcode.js library is included in assets/js/qrcode.js.

使用者評論

這個外掛目前沒有任何使用者評論。

參與者及開發者

以下人員參與了開源軟體〈Loqwall 2FA〉的開發相關工作。

參與者
  • mohamedelaaouam99

將〈Loqwall 2FA〉外掛本地化為台灣繁體中文版

對開發相關資訊感興趣?

任何人均可瀏覽程式碼、查看 SVN 存放庫,或透過 RSS 訂閱開發記錄。

變更記錄

1.0.0

  • Initial release.
  • Email OTP authentication.
  • Authenticator App (TOTP) authentication.
  • Backup recovery codes.
  • Device trust (remember this device).
  • Role-based 2FA enforcement.
  • Audit log with configurable retention.
  • Rate limiting on OTP verification.
  • Translatable — bundled French (fr_FR) translation.

中繼資料

  • 版本 1.0.0
  • 最後更新 2 天前
  • 啟用安裝數 少於 10 次
  • WordPress 版本需求 6.0 或更新版本
  • 已測試相容的 WordPress 版本 7.0.2
  • PHP 版本需求 8.0 或更新版本
  • 語言
    English (US)
  • 標籤:
    2FAauthenticationloginsecuritytwo factor
  • 進階檢視

評分

這個項目尚無任何評論記錄。

Your review

查看全部使用者評論

參與者

  • mohamedelaaouam99

技術支援

使用者可在技術支援論壇提出意見反應或使用問題。

檢視技術支援論壇

  • 關於我們
  • 最新消息
  • 主機代管
  • 隱私權
  • 展示網站
  • 佈景主題目錄
  • 外掛目錄
  • 區塊版面配置目錄
  • Learn
  • 技術支援
  • 開發者資源
  • WordPress.tv ↗
  • 共同參與
  • 活動
  • 贊助基金會 ↗
  • Five for the Future
  • WordPress.com ↗
  • Matt ↗
  • bbPress ↗
  • BuddyPress ↗
WordPress.org
WordPress.org

Taiwan 正體中文

  • 查看我們的 X (之前的 Twitter) 帳號
  • 造訪我們的 Bluesky 帳號
  • 造訪我們的 Mastodon 帳號
  • 造訪我們的 Threads 帳號
  • 造訪我們的 Facebook 粉絲專頁
  • Visit our Instagram account
  • Visit our LinkedIn account
  • 造訪我們的 TikTok 帳號
  • Visit our YouTube channel
  • 造訪我們的 Tumblr 帳號
程式碼,如詩
The WordPress® trademark is the intellectual property of the WordPress Foundation.