Template marketplaces
Add a working form to a Creative Market template
Short answer
First check what kind of template it is. For an HTML template, point the form's action at your WebForms endpoint and fix any jQuery submit script to ask for JSON. For a Webflow, Framer, Squarespace, Wix or Shopify template, the form belongs to that platform, so follow that platform's guide.
Creative Market sells website templates from independent shops for many platforms: plain HTML and Bootstrap, WordPress, Shopify, Squarespace, Wix, Webflow, Framer and more. There is no common contact form setup, so the fix depends on what you bought. This guide helps you tell which kind you have and send its form to WebForms.
Setup
Identify the template type
Look at what you downloaded.
.htmlfiles withcss/andjs/folders are an HTML template. A Webflow, Framer, Squarespace, Wix or Shopify template is installed into that platform, and its form is that platform's form.Create a form and copy its endpoint
Sign up, create a form, and copy the endpoint URL. Submissions are emailed to your verified address by default.
HTML template: point the form at WebForms
Find the
<form>on the contact page and set itsactionto your endpoint withmethod="POST". If a script submits it without a page reload, adddataType: "json"to its$.ajaxcall, or replace the script with the fetch example below.Platform template: follow the platform's guide
For Webflow, Framer, Squarespace, Wix and Shopify templates, the related guides below show where the form's action or embed lives on that platform.
Send a test
Submit the form on the live site; it appears in your inbox and the dashboard within seconds.
Creative Market examples
Swap in your own endpoint and these run as-is.
<!-- contact.html: only the action changes -->
<form id="contact-form" action="https://send.webforms.to/wft_your_key" method="POST">
<input type="text" name="name" placeholder="Your name" required>
<input type="email" name="email" placeholder="Your email" required>
<input type="text" name="subject" placeholder="Subject">
<textarea name="message" placeholder="Message" required></textarea>
<!-- Optional: WebForms reads these -->
<input type="hidden" name="_subject" value="New enquiry from the website">
<input type="text" name="_gotcha" tabindex="-1" autocomplete="off"
style="position:absolute;left:-9999px" aria-hidden="true">
<button type="submit">Send message</button>
</form>A script that works with any HTML template:
<!-- Replaces the template's form script entirely -->
<script>
document.querySelector("#contact-form").addEventListener("submit", async (e) => {
e.preventDefault();
const form = e.target;
const out = form.querySelector(".form-message") ?? form.appendChild(document.createElement("p"));
const body = new FormData(form);
// So "Reply" on the notification email goes to the visitor.
if (body.get("email")) body.set("_replyto", body.get("email"));
const res = await fetch(form.action, {
method: "POST",
body,
headers: { Accept: "application/json" },
});
const data = await res.json().catch(() => ({ ok: false }));
out.textContent = data.ok ? data.message : "Sorry, something went wrong. Please try again.";
if (data.ok) form.reset();
});
</script>How to tell what your template's form needs
Open the contact page source and look at the form:
actionpoints to a.phpfile: it needs PHP on your host. Point it at WebForms instead.actionis empty or#, and a script handles the submit: the template expects you to add a backend. Use your WebForms endpoint, and the fetch script above.actionalready points to another form service: replace that URL with your WebForms endpoint.- No
<form>in the HTML because the template is for a site builder: use that builder's guide.
Why the template's contact form does not send
Most marketplace HTML templates post the form to a PHP file that ships with the template, such as contact.php, mail.php, php/contact-form.php or bat/rd-mailform.php. That script calls PHP's mail function or PHPMailer to send you an email. It only works on a server that runs PHP and is allowed to send mail.
Static hosting runs no PHP at all, so on hosts like GitHub Pages and Netlify the POST fails, often with 405 Not Allowed. Some cloud providers, DigitalOcean among them, block outgoing mail ports by default. Shared hosting that does run PHP can still send these emails to spam, because they come from the web server rather than a real mail domain.
Pointing the form at a WebForms endpoint removes the PHP step. The submission goes to WebForms, which checks it for spam, stores it, and emails it to you, or sends it to Slack, Discord, Telegram or a webhook on Pro.
Creative Market form FAQ
With any template that lets you set where a form submits or add an HTML embed: HTML and Bootstrap templates, Webflow, Framer, Squarespace on Business and above, Wix and Shopify.
No. With WebForms the form posts straight to your endpoint, so the template can be hosted on GitHub Pages, Netlify or any static host.
Related guides
Where Creative Market submissions can go
The guide above gets the submission to your endpoint. From there it can land anywhere: one destination on Free, several on Pro.
Need the form markup too? The template gallery has complete forms for contact, waitlist, job application and more, and the form generator builds one field by field.
Ready to wire up your Creative Market form?
Free for 300 submissions a month. Endpoint in under a minute, no card required.
Start free