What this guide covers
You will install the Weld for WP plugin, configure it, and place a working wallet connect button on a WordPress page using a single shortcode. By the end, any visitor with a CIP-30 Cardano wallet (Eternl, Lace, Nami, etc.) can connect to your site.
Time: Under 5 minutes.
Difficulty: Beginner.
What you need: A running WordPress site (5.8+), PHP 7.4+, and a Cardano browser wallet extension for testing.
Why wallet connect?
Before your WordPress site can do anything with Cardano — accept payments, verify identity, gate content — the visitor needs to connect their wallet. Wallet connect is the handshake.
It uses CIP-30 (Cardano Improvement Proposal 30), the standard API that every Cardano browser wallet implements. CIP-30 lets your site detect which wallets are installed, request a connection, and — once approved — read the wallet’s public address. No private keys are ever shared with your site.
Weld for WP handles all of this with a 6 KB frontend bundle. No React. No WASM. No framework dependencies. One shortcode renders a button.
Step 1 — Download the plugin
Click the button above to download the ZIP directly from this site. It includes pre-built JavaScript and CSS assets — no Node.js or build tools needed.
You can also grab it from the Weld for WP project page or from GitHub releases.
Step 2 — Install and activate
- In your WordPress admin, go to Plugins → Add New → Upload Plugin
- Choose the ZIP file you just downloaded
- Click Install Now, then Activate
That is it. If you prefer manual installation, extract the ZIP to wp-content/plugins/ and activate from the Plugins page. The folder name does not matter — the plugin works regardless of what it is called.
What just happened: The plugin registered three shortcodes (, , and ), a REST API at /wp-json/weldpress/v1/, and an admin settings page under Weld for WP. No frontend assets are loaded on your pages yet — they only enqueue when a page actually uses one of the shortcodes.
Step 3 — Configure the plugin
Navigate to Weld for WP → Settings in the WordPress admin sidebar.
Network
Choose your network:
- Preprod (default) — Use this for testing. Free test ADA is available from the Cardano testnet faucet.
- Mainnet — Real ADA. Only switch to this when you are ready for production.
Start with Preprod. Always.
API keys (optional for wallet connect)
For the wallet connect button alone, you do not need API keys. The connect button uses CIP-30 directly in the browser — no server calls involved. API keys become necessary when you want to build and submit transactions:
- Anvil API key — Required for building and submitting transactions. Register at ada-anvil.io.
- Blockfrost API key — Required for querying wallet balances and native assets. Register at blockfrost.io (free tier available).
For this guide, you can skip API keys entirely. The connect button works without them.
Step 4 — Add the shortcode to a page
Open any WordPress page or post in the editor. Add this shortcode wherever you want the button to appear:
That is it. Save and preview the page.
The shortcode accepts two optional attributes:
| Attribute | Default | What it does |
|---|---|---|
label |
Connect Wallet | Changes the button text |
theme |
light | Set to dark for dark backgrounds |
Example with custom label and dark theme:
Step 5 — Test it
Here is a live wallet connect button, rendered by the exact shortcode described above:
Click it. If you have a CIP-30 wallet extension installed, you will see a modal listing your available wallets. Select one to connect.
No wallet extension installed? The modal will show an empty state. Install Eternl or Lace as a browser extension, then refresh this page.
What happens when a user connects
- The button click opens a modal listing all detected CIP-30 browser wallets
- The user selects their wallet — this triggers the wallet extension’s
enable()method - The wallet extension prompts the user to approve the connection
- On approval, the button text updates to show the truncated wallet address (first 12 characters + last 8 characters)
- The selected wallet key is saved to
localStorageasweldpress_last_wallet, so the connection auto-restores on future page visits
No private keys are shared. CIP-30 only exposes the wallet’s public address and the ability to request transaction signatures. Your WordPress site never sees the user’s private keys.
For developers — the JavaScript API
Weld for WP exposes window.WeldPress for custom integrations beyond shortcodes:
// Check if a wallet is connected
const state = WeldPress.wallet.getState();
console.log(state.isConnected); // true or false
console.log(state.address); // addr_test1qr...
console.log(state.balanceAda); // "142.567890"
// React to wallet state changes
WeldPress.wallet.subscribe(function(state) {
if (state.isConnected) {
// Show gated content, enable payment forms, etc.
}
});
// List all installed wallets (even before connecting)
const wallets = WeldPress.wallet.getInstalledWallets();
// [{ key: 'eternl', name: 'Eternl', icon: '...', apiVersion: '0.1.0' }]
This API is how you build custom flows like content gating, payment forms, or identity verification on top of the wallet connect foundation.
Going further
Once the wallet is connected, you can layer on more Weld for WP functionality:
- Show wallet info: Add
anywhere on the page. It displays the connected wallet’s icon, name, address, and ADA balance. Hidden when no wallet is connected. - Accept payments: Add
to render a payment form. Requires Anvil and Blockfrost API keys. - Build custom logic: Use
WeldPress.wallet.subscribe()to react to connection state changes in your own JavaScript.
Troubleshooting
The button does not appear: Confirm the plugin is activated in Plugins. Check that the shortcode is typed exactly as — not [weld_connect] or [weldpress-connect].
The modal shows no wallets: You need a CIP-30 compatible browser wallet extension (Eternl, Lace, Nami, Flint, Typhon, GeroWallet, NuFi, Begin, VESPR, or Yoroi). Mobile browsers do not support wallet extensions — test on desktop.
The button text does not update after connecting: Check your browser console for JavaScript errors. The most common cause is a conflict with another plugin’s JavaScript. Weld for WP’s vanilla JS bundle has zero dependencies, so conflicts are rare.
Shortcode displays as plain text: Make sure you are not wrapping the shortcode in a <code> or <pre> block in the editor. WordPress only processes shortcodes in regular paragraph content.
What you built
You now have a working Cardano wallet connect button on your WordPress site. One shortcode. No JavaScript frameworks. No build step. The entire frontend is 6 KB gzipped.
This is the foundation for everything else in the Cardano + WordPress stack — payments, NFT verification, content gating, on-chain proof of authorship. Wallet connect is always step one.