description |
---|
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.
{% hint style="info" %} Webflow, WordPress, and Squarespace are also supported. Click to read Webflow guide. For others, instructions are coming soon, meanwhile, ask in our Discord {% endhint %}
- Create/open your Wix website
- Go to Settings -> Advanced -> Custom code, click "+Add custom code" (at least "Connect Domain" Wix subscription required)
- Paste Buildship code snippet to the block, under "Place Code in" **** select "Body - end"
- Update code snippet with your contract address (see below)
- Add a button with URL:
https://your-minting-website.xyz/#mint-button
- You need an Ethereum NFT smart contract. Create it using Buildship, or test with an example contract.
{% hint style="success" %} 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. {% endhint %}
- 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)
- 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.
<script>
CONTRACT_ADDRESS = "YOUR CONTRACT ADDRESS HERE"
IS_TESTNET = false
// if your contract is NOT VERIFIED on Etherscan
// put here: CONTRACT_ABI = [{...}]
// don't do anything if unsure
</script>
<script src="https://nftcomponents.vercel.app/static/js/main.js"></script>
<link href="https://nftcomponents.vercel.app/static/css/main.css" rel="stylesheet">
4. If you have your Ethereum NFT contract
- insert your contract address in
CONTRACT_ADDRESS
field - set
IS_TESTNET
tofalse
ortrue
depending on which network is the contract on:Ethereum Mainnet
orGoerli Testnet
.
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 🎉
<script>
CONTRACT_ADDRESS = "0xb1db0dbad7a14370872a7e5327c8ad7c9951a661"
IS_TESTNET = true
</script>
<script src="https://nftcomponents.vercel.app/static/js/main.js"></script>
<link href="https://nftcomponents.vercel.app/static/css/main.css" rel="stylesheet">
Yes, absolutely! You can contact us in Discord, or open a GitHub issue
It's easy! Set NETWORK_ID
instead of IS_TESTNET
in the code snippet
<script>
CONTRACT_ADDRESS = "YOUR CONTRACT ADDRESS HERE"
NETWORK_ID = 1
// remove IS_TESTNET line
...
</script>
<script ...>
<link ...>
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
You need to set DEFAULTS.hideCounter
to true
<script>
CONTRACT_ADDRESS = "YOUR CONTRACT ADDRESS HERE"
NETWORK_ID = 1
DEFAULTS = {
hideCounter: true
}
...
</script>
<script ...>
<link ...>