🪄How to build an NFT minting website on Wix without code
a.k.a how to mint NFTs on Wix or how to connect Metamask to Wix
This article helps to set up a no-code widget that allows minting NFTs on your Wix website.
Webflow, WordPress, and Squarespace are also supported. Click to read Webflow guide. For others, instructions are coming soon, meanwhile, ask in our Discord
TL;DR
Starting out
You need an Ethereum NFT smart contract. Create it using Buildship, or test with an example contract.
ERC721Community contract by buildship.xyz is used by 280+ collections with 1500ETH+ in total volume. It uses ERC721A, and has 40-100% lower minting gas fees, costs ~10-20$ in gas to deploy, bullet-proof security, and extensions like allowlists, funds/royalty splits, mint passes, etc.
Make sure your contract has
price
andmint
constants. The possible namings are:mint
,buy
ormintXXX
;price
orcost
.Your Wix website is at least on a Connect Domain site plan (required to add custom code)
How to use?
Open Wix website editor
Go to your Wix Dashboard by clicking on Wix logo. Then open Settings -> Advanced -> Custom code, and click on "+ Add custom code" button
3. Copy & paste this code in the Wix window, and select the "Body - end" option under "Place Code in".
Don't close the code window, we'll still need it in Step 4.
4. If you have your Ethereum NFT contract
If you don't have a contract, create it using Buildship without coding skills
Your contract should be verified on Etherscan. Otherwise you have to add
CONTRACT_ABI = [{...}]
line in the above code, with your full contract ABI inserted. If you have an error saying your ABI is too long, click here.
5. Create a Wix button and insert your minting page link ending with /#mint-button
.
Example: https://your-minting-website.xyz/#mint-button
Then set the "How does it open?" option to "Current window".
6. Publish the changes, and you're done 🎉
Example for testing
FAQ
I'm confused / it's not working, can you help me?
Yes, absolutely! You can contact us in Discord, or open a GitHub issue
How to use this with Polygon, Binance, or other Ethereum-based networks?
It's easy! Set NETWORK_ID
instead of IS_TESTNET
in the code snippet
Some of the network IDs you might use:
Ethereum Mainnet:
NETWORK_ID = 1
Ethereum Rinkeby Testnet:
NETWORK_ID = 4
Polygon:
NETWORK_ID = 137
Binance:
NETWORK_ID = 56
For other IDs visit Chainlist
How to style minting dialog?
How to hide minted counter from the dialog?
You need to set DEFAULTS.hideCounter
to true
Last updated