Directory / plugin
EthPress – Web3 Login
v3.1.0 · by lynn999
EthPress Web3 Login Wordpress Plugin adds the capability to connect with cryptocurrency wallets such as MetaMask or Reown QR code.
About this plugin
The EthPress Web3 Login WordPress Plugin adds a capability to connect with cryptocurrency wallets such as MetaMask for Ethereum, Binance Smart Chain (BSC), Polygon (MATIC) or any other EVM-compatible blockchain, and wallets that support Reown QR code. Adds a button to WordPress login screen that will let users securely log in with their crypto wallet.
Add the capability to log in with cryptocurrency wallets such as MetaMask for Ethereum, and wallets that support Reown QR code. Adds a button to WordPress login screen that will let users securely log in with their crypto wallet.
In the background, a regular WordPress user account is created, so existing plugins and customizations will have no problem working along.
The EthPress NFT Access Add-On can be used to control access for WooCommerce products, simple pages and posts.
Supported Languages
The plugin is translated into the following languages:
- German (de_DE)
- Spanish (es_ES)
- French (fr_FR)
- Hindi (hi_IN)
- Italian (it_IT)
- Japanese (ja_JP)
- Portuguese (Brazil) (pt_BR)
- Portuguese (pt_PT)
- Russian (ru_RU)
- Chinese (Simplified) (zh_CN)
- Chinese (Traditional) (zh_TW)
Features
- A web3 login button is added to your login screen automatically
- The
Reown Settingssection holds your ownReown Project ID(from dashboard.reown.com) and the wallet modalTheme Mode(Dark ModeorLight Mode) - The
Hide on the WordPress login pagesetting can hide the wallet login and register buttons onwp-login.php, while buttons added with the shortcodes or the widget keep working - The
Terms & Conditionssettings (in Login Settings) show a required “I agree to the Terms & Conditions” checkbox next to the wallet login button. The text can link to a Terms & Conditions page URL - A wallet without an account gets a message explaining why: the site does not accept registrations (the
Anyone can registersetting) and the visitor should contact the site administrator. The wording is filterable withethpress_registration_closed_messageandethpress_unregistered_message - Use the EthPress widget for maximum ease
- A shortcode [ethpress_login_button] can be used to display the Login button anywhere
- A shortcode [ethpress_link_button] can be used to display the Link accounts button anywhere. The new account linked address will be put in all HTML elements with the
eth-address-fieldclass present. - Local signature verification with the
php-gmp/php-bcmathextensions, or by a verification service you can host yourself. TheDiagnosticssection of the plugin settings tells you which of the two is in use - The
Diagnosticssection of the plugin settings reports what a wallet login depends on: the PHP signature support (php-gmp/php-bcmath) of your server, a signature self-test that runs through whichever path the logins actually take (this server or the verification service), the verification service that would be used instead, whether your own Reown Project ID is set, and whether new wallets can still register
Features PRO
The EthPress PRO version is required to use these features. Free 7 days Trial is available!
- Managed Verification Service.
- EthPress login button on a WooCommerce Login, Register and Checkout Forms.
- The [ethpress_account] short code can be used to display the current user’s address logged with.
- A shortcode [ethpress_unlink_button] can be used to display the Unlink wallet button anywhere. It removes the wallet association and disconnects the connected wallet. The account itself is kept, so signing in with the same wallet again links it back to that account instead of creating a second one (see the “What happens to the account when a wallet is unlinked?” question)
- The
Login button label,Register button label,Link button labelandUnlink button labelsettings can be changed in the plugin settings - The
The login signing messageandThe account link signing messagesettings can be used to change the message a user signs in the wallet when logging in or linking an account - The
The account link success messageandThe account unlink messagesettings can be used to change the messages shown after a wallet is linked or unlinked - WooCommerce Account Details show Link Wallet button setting
- The
Redirect URLsetting can be used to set an URL of a page to redirect after a successful login - The
Disable standard redirectsetting (in Login Settings) stops the automatic redirect to the WordPress dashboard or the configuredRedirect URLafter a successful login, returning the user to the page where the login started instead - The
Remember mesetting (in Login Settings) controls whether wallet users stay logged in across browser restarts instead of having to connect their wallet on every visit. It is enabled by default and can be changed in PRO only - The
Profile completionsetting (in Login Settings) collects the email and name of new wallet users. TheInline form next to the login buttonmode shows the fields with the button, so they are filled in before the account is created; theRedirect to the profile after loginmode sends users who registered without an email address to their profile after the first login - The
Supported networkssetting (in Reown Settings) chooses which networks are offered to the user: the EVM chains and testnets, and – in PRO – the non-EVM ones (Solana, TRON, Bitcoin, TON). A network is only offered when this installation can verify its signatures - An account can carry several wallets (PRO). A visitor logs in with any of them, and the
[ethpress_wallets]shortcode lists them all;[ethpress_account]shows the wallet this session was opened with. Unlinking removes only the wallet it was clicked for, and it is never possible to attach somebody else’s wallet - Non-EVM chains (PRO): Solana, TRON, Bitcoin (P2PKH, P2WPKH and taproot/BIP-322) and TON (
ton_proof) wallets log in to the same WordPress account as an EVM wallet. Each chain’s signature is verified on your own server – the crypto stack is bundled, no external service is needed - TON has a button of its own next to the login button:
Log in with TON. The TonConnect SDK is what asks a TON wallet for aton_proof, because AppKit does not request one on connect; the button appears only when TON is enabled in the settings and a TON wallet is installed - The
Custom CSSsetting (in Reown Settings) can style the login buttons and the wallet modal, including the AppKit CSS variables such as--w3m-accent - The
noredirectandredirect_toattributes of the[ethpress_login_button]shortcode control the redirect per button.[ethpress_login_button noredirect="1"]disables the standard redirect for that button, andredirect_to="current"returns the user to the page where the login started. Any other value ofredirect_tois used as an explicit redirect URL - The
labelattribute of the[ethpress_login_button],[ethpress_link_button]and[ethpress_unlink_button]shortcodes changes the button text for that button only, for example[ethpress_login_button label="Sign in"]
The NFT Token based access control for the WooCommerce products, simple pages and posts can be done with the EthPress NFT Access Add-On. Free 7 days Trial is available!
Integrations
- The Ultimate Member plugin is supported
EthPress NFT Access Add-On Features
Check user NFT authentication control (non-fungible token, erc-721 and erc-1155) ownership.
The EthPress NFT Access Add-On is perfect for blocking users access to a Page, a Post and a WooCommerce Product page, if they don’t own a certain NFT token.
Free 7 days Trial is available
- Site wide NFT verification requirement to register or login
- Restrict access to a
Pageto some NFT token owners only - Restrict access to a
Postto some NFT token owners only - Restrict access to a WooCommerce
Productto some NFT token owners only - Shortcode to display your access level: [ethpress_nft_access_addon_nft product_id=”1337″]
ERC721andERC1155non-fungible token standards are supported
Integrations
- LearnPress LMS courses access can be granted with NFT token
- Tutor LMS courses access can be granted with NFT token
- Ethereum Wallet plugin generated accounts are also tested
-
The
ethpress_nft_access_get_user_accountsfilter can be used to add wallets for testing:add_filter('ethpress_nft_access_get_user_accounts', function($accounts) { $more_accounts = get_more_accounts(); return array_merge($accounts, $more_accounts); });
Disclaimer
By using this free plugin you accept all responsibility for handling the account balances for all your users.
Under no circumstances is ethereumico.io or any of its affiliates responsible for any damages incurred by the use of this plugin.
Every effort has been made to harden the security of this plugin, but its safe operation depends on your site being secure overall. You, the site administrator, must take all necessary precautions to secure your WordPress installation before you connect it to any live wallets.
You are strongly advised to take the following actions (at a minimum):
- Educate yourself about cold and hot cryptocurrency storage
- Obtain hardware wallet to store your coins
- Educate yourself about hardening WordPress security
- Install a security plugin such as Jetpack or any other security plugin
- Enable SSL on your site if you have not already done so.
By continuing to use the EthPress plugin, you indicate that you have understood and agreed to this disclaimer.
Hooks
The full list of the plugin actions and filters is documented in the
extra readme.
The EthPress PRO version is required to use the PRO hooks. Free 7 days Trial is available!