HTML Block
The simplest way: add a Custom HTML block in the WordPress editor:Copy
<form action="https://spike.ac/api/f/YOUR_FORM_SLUG" method="POST">
<input type="text" name="_gotcha" style="display:none">
<p>
<label for="name">Name</label><br>
<input type="text" id="name" name="name" required style="width:100%">
</p>
<p>
<label for="email">Email</label><br>
<input type="email" id="email" name="email" required style="width:100%">
</p>
<p>
<label for="message">Message</label><br>
<textarea id="message" name="message" rows="4" required style="width:100%"></textarea>
</p>
<p>
<button type="submit">Send Message</button>
</p>
</form>
Shortcode
Create a reusable shortcode by adding this to your theme’s functions.php:functions.php
Copy
function spike_contact_form($atts) {
$atts = shortcode_atts(array(
'slug' => '',
'redirect' => '',
), $atts);
if (empty($atts['slug'])) {
return '<p>Error: Form slug required</p>';
}
$redirect = $atts['redirect'] ?
'<input type="hidden" name="_next" value="' . esc_url($atts['redirect']) . '">' : '';
return '
<form action="https://spike.ac/api/f/' . esc_attr($atts['slug']) . '" method="POST" class="spike-form">
<input type="text" name="_gotcha" style="display:none">
' . $redirect . '
<p><label>Name</label><input type="text" name="name" required></p>
<p><label>Email</label><input type="email" name="email" required></p>
<p><label>Message</label><textarea name="message" rows="4" required></textarea></p>
<p><button type="submit">Send</button></p>
</form>
';
}
add_shortcode('spike_form', 'spike_contact_form');
[spike_form slug="YOUR_FORM_SLUG"]
Styling
Add custom CSS in Appearance → Customize → Additional CSS:Copy
.spike-form input,
.spike-form textarea {
width: 100%;
padding: 10px;
margin-bottom: 15px;
border: 1px solid #ddd;
}
.spike-form button {
background: #0073aa;
color: white;
padding: 12px 24px;
border: none;
cursor: pointer;
}
.spike-form button:hover {
background: #005a87;
}