{"id":118282,"date":"2026-09-11T21:09:32","date_gmt":"2026-09-11T18:09:32","guid":{"rendered":"https:\/\/themeisle.com\/blog\/?p=118282&#038;preview=true&#038;preview_id=118282"},"modified":"2026-09-11T21:09:32","modified_gmt":"2026-09-11T18:09:32","slug":"wordpress-form-without-plugin","status":"publish","type":"post","link":"https:\/\/themeisle.com\/blog\/wordpress-form-without-plugin\/","title":{"rendered":"How to Create a WordPress Contact Form Without a Form Plugin"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Every service business needs a way for visitors to ask for a quote. The standard advice is to install a dedicated contact form plugin, and that works, but it also means one more plugin to update, one more settings screen to learn, and one more upgrade prompt to ignore. &#128580;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If your site already runs on the block editor, there&rsquo;s a leaner path. <a href=\"https:\/\/wordpress.org\/plugins\/otter-blocks\/\" target=\"_blank\" rel=\"noreferrer noopener\">Otter Blocks<\/a> is a free plugin (300,000+ active installs, 4.7 out of 5 on WordPress.org) that adds a library of extra blocks to Gutenberg, and one of those blocks is a proper Form block: custom fields, email routing, spam protection, and an autoresponder.<\/p>\n\n\n\n<!--more-->\n\n\n\n<p class=\"wp-block-paragraph\">Quick honesty check: yes, Otter is still a plugin, so &ldquo;no plugin at all&rdquo; would be a fib. The win here is skipping a <em>single-purpose<\/em> form plugin when a general blocks plugin you may already want can cover the job too. One less thing to maintain. &#128077;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This guide walks through building a quote-request form for a service business, step by step: picking the right fields, routing submissions to the right inbox, stopping spam, and sending an automatic reply. It also covers the cases where a dedicated form plugin genuinely is the better tool, because sometimes it is.<\/p>\n\n\n    \r\n    <style>\r\n        :root {\r\n        --jtoc-progress-bar-color: #4267cf;\n        }\r\n                    .wpj-jtoc.--jtoc-theme-none.--jtoc-has-custom-styles {\r\n        --jtoc-width: 100%;\n--jtoc-toc-padding: 24px;\n--jtoc-toc-border: 1px solid;\n--jtoc-toc-border-color: #dedede;\n--jtoc-background-color: #f6f7f9;\n--jtoc-header-height: 20px;\n--jtoc-header-margin: 0;\n--jtoc-header-padding: 0;\n--jtoc-title-color: #393939;\n--jtoc-title-font-size: 1.2em;\n--jtoc-title-label-font-weight: 400;\n--jtoc-body-margin: 16px 0 0 0;\n--jtoc-body-padding: 0;\n--jtoc-headings-margin: 10px 0 0 0;\n--jtoc-link-font-size: 1em;\n--jtoc-link-font-weight: 400;\n--jtoc-link-color: #848484;\n--jtoc-link-color-hover: #4a66c8;\n--jtoc-link-color-active: #4a66c8;\n        }\r\n        .--jtoc-the-content{\r\ndisplay:none;\r\n}\r\n.--jtoc-is-active>.wpj-jtoc--item-content>a:before{\r\nmargin-left:3px;\r\n}\r\n.wpj-jtoc--nav>.wpj-jtoc--items li a::before{\r\ncontent:'\\203A';\r\ndisplay:block;\r\nfloat:left;\r\nheight:100%;\r\nfont-weight:700;\r\ncolor:#4267CF;\r\nline-height: 20px;\r\nmargin-right: 3px;\r\n}\r\n.sidebar .wpj-jtoc--toc{\r\nborder:0;\r\npadding:0;\r\n}\r\n.sidebar .wpj-jtoc--header,\r\n.sidebar .wpj-jtoc--body{\r\nbackground:transparent;\r\n}\r\n\r\n.sidebar .--jtoc-is-active>.wpj-jtoc--item-content>a{\r\ntext-decoration:none;\r\n}\r\n.sidebar-left .widget-first{\r\nposition:sticky;\r\ntop:70px;\r\nmargin-bottom:1250px;\r\n}\r\n.sidebar-left{\r\ndisplay:none;\r\nmax-width:300px;\r\nposition:absolute;\r\nleft:-330px;\r\ntop:0;\r\nheight:100%;\r\n}\r\n@media only screen and (max-width: 1900px) {\r\n.single-post .sidebar-left{\r\ndisplay:none !important;\r\n}\r\n.--jtoc-the-content{\r\ndisplay:block;\r\n}\r\n@media only screen and (max-width: 400px) {\r\n.wpj-jtoc--item .wpj-jtoc--item-content{\r\nmargin-top:5px;\r\n}\r\n.wpj-jtoc--header-main .wpj-jtoc--title{\r\nfont-size:1.1em;\r\n}\r\n}    <\/style>\r\n\r\n\r\n    <!-- jtoc progress bar widget -->\r\n    <div class=\"wpj-jtoc--widget-progress --progress-top\">\r\n        <div class=\"wpj-jtoc--widget-progress-bar\"><\/div>\r\n    <\/div>\r\n\r\n<div id=\"wpj-jtoc\" class=\"wpj-jtoc wpj-jtoc--main --jtoc-the-content --jtoc-theme-none --jtoc-title-align-left --jtoc-toggle-icon --jtoc-toggle-position-right --jtoc-toggle-1 --jtoc-header-as-toggle --jtoc-headings-full-row-clickable --jtoc-floating-toc-top --jtoc-floating-has-shadow --jtoc-has-custom-styles --jtoc-is-unfolded\" >\r\n            \r\n    <!-- TOC -->\r\n    <div class=\"wpj-jtoc--toc \">\r\n                            <div class=\"wpj-jtoc--header\">\r\n                <div class=\"wpj-jtoc--header-main\">\r\n                                        <div class=\"wpj-jtoc--title\">\r\n                        <!-- <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"lucide lucide-columns-3\"><rect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\"\/><path d=\"M9 3v18\"\/><path d=\"M15 3v18\"\/><\/svg> -->\r\n                        <span class=\"wpj-jtoc--title-label\">Table of contents<\/span>\r\n                    <\/div>\r\n                                                        <\/div>\r\n            <\/div>\r\n                                <div class=\"wpj-jtoc--body\">\r\n                        <nav class=\"wpj-jtoc--nav\">\r\n                <ol class=\"wpj-jtoc--items\"><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#what-you-need\" title=\"What you need before starting\" data-numeration=\"1\" >What you need before starting<\/a>\r\n                    <\/div> <\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#step-1-install-and-insert\" title=\"Step 1: Install Otter Blocks and insert the Form block\" data-numeration=\"2\" >Step 1: Install Otter Blocks and insert the Form block<\/a>\r\n                    <\/div> <\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#step-2-fields\" title=\"Step 2: Build the quote-request fields\" data-numeration=\"3\" >Step 2: Build the quote-request fields<\/a>\r\n                    <\/div> <\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#step-3-email-routing\" title=\"Step 3: Route submissions to the right inbox\" data-numeration=\"4\" >Step 3: Route submissions to the right inbox<\/a>\r\n                    <\/div> <\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#step-4-spam\" title=\"Step 4: Turn on spam protection \ud83d\udee1\ufe0f\" data-numeration=\"5\" >Step 4: Turn on spam protection \ud83d\udee1\ufe0f<\/a>\r\n                    <\/div> <\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#step-5-autoresponder\" title=\"Step 5: Set up the autoresponder\" data-numeration=\"6\" >Step 5: Set up the autoresponder<\/a>\r\n                    <\/div> <\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#step-6-style-publish\" title=\"Step 6: Style the form and publish\" data-numeration=\"7\" >Step 6: Style the form and publish<\/a>\r\n                    <\/div> <\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#honest-limits\" title=\"When a dedicated form plugin is the better tool\" data-numeration=\"8\" >When a dedicated form plugin is the better tool<\/a>\r\n                    <\/div> <\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#wrapping-up\" title=\"Wrapping up\" data-numeration=\"9\" >Wrapping up<\/a>\r\n                    <\/div> <\/li><\/ol>            <\/nav>\r\n                                                        <\/div>\r\n            <\/div>\r\n<\/div>\r\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">&#9878;&#65039; DISCLAIMER: Otter Blocks is made by ThemeIsle, the same company behind this blog. The tutorial below sticks to what the free and Pro versions actually do, and the honest-limits section tells you when a different plugin wins.<\/p>\n<\/blockquote>\n\n\n\n<h2 id=\"what-you-need\" class=\"wp-block-heading joli-heading jtoc-heading\">What you need before starting<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>A WordPress site using the block editor.<\/strong> Any modern theme works. If you&rsquo;re new to Gutenberg, this <a href=\"https:\/\/themeisle.com\/blog\/wordpress-block-editor\/\">WordPress block editor tutorial<\/a> covers the basics.<\/li>\n\n\n\n<li><strong>The free Otter Blocks plugin.<\/strong> Everything in steps 1 through 4 and step 6 works in the free version. Pro-only extras are marked clearly as they come up.<\/li>\n\n\n\n<li><strong>An email address<\/strong> where quote requests should land.<\/li>\n\n\n\n<li><strong>About 15 minutes.<\/strong> Less if you skip the styling step. &#9201;&#65039;<\/li>\n<\/ul>\n\n\n\n<h2 id=\"step-1-install-and-insert\" class=\"wp-block-heading joli-heading jtoc-heading\">Step 1: Install Otter Blocks and insert the Form block<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">From your WordPress dashboard, go to <strong>Plugins &rarr; Add New<\/strong>, search for &ldquo;Otter Blocks,&rdquo; then click <strong>Install<\/strong> and <strong>Activate<\/strong>. That&rsquo;s the whole setup; there&rsquo;s no wizard to fight through.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Next, open the page where the form should live (Pages &rarr; Add New, or edit your existing contact page). Click the <strong>+<\/strong> button to open the block inserter, search for &ldquo;Form,&rdquo; and insert the Form block. Otter immediately asks which variation you want to start with: <strong>Contact Form<\/strong> or <strong>Subscribe Form<\/strong>. Pick Contact Form. (Clicking Skip also gives you the contact form, since it&rsquo;s the default.)<\/p>\n\n\n<div class=\"wp-block-image blog-img-std-space\">\n<figure class=\"aligncenter size-full\"><img data-opt-id=1077330589  fetchpriority=\"high\" decoding=\"async\" width=\"2560\" height=\"1313\" src=\"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-block-variations-scaled-1.png\" alt=\"The Otter Form block variation picker offering a Contact Form or Subscribe Form starting point inside the WordPress block editor\" class=\"wp-image-118833\" srcset=\"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1920\/h:984\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-block-variations-scaled-1.png 2560w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:300\/h:154\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-block-variations-scaled-1.png 300w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1024\/h:525\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-block-variations-scaled-1.png 1024w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:768\/h:394\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-block-variations-scaled-1.png 768w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1536\/h:788\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-block-variations-scaled-1.png 1536w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1920\/h:984\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-block-variations-scaled-1.png 2048w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:50\/h:26\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-block-variations-scaled-1.png 50w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:468\/h:240\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-block-variations-scaled-1.png 468w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:774\/h:397\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-block-variations-scaled-1.png 774w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1170\/h:600\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-block-variations-scaled-1.png 1170w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:289\/h:148\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-block-variations-scaled-1.png 289w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:380\/h:195\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-block-variations-scaled-1.png 380w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:263\/h:135\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-block-variations-scaled-1.png 263w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1920\/h:984\/q:mauto\/f:best\/dpr:2\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-block-variations-scaled-1.png 2x\" sizes=\"(max-width: 700px) 100vw, 700px\"><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">You now have a working form with Name, Email, and Message fields. Technically, you could publish right now. But a quote request deserves better fields, so keep going.<\/p>\n\n\n\n<h2 id=\"step-2-fields\" class=\"wp-block-heading joli-heading jtoc-heading\">Step 2: Build the quote-request fields<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Click any field in the form and the sidebar shows its settings. You can add new fields, reorder them, and edit each one: change the label, hide the label, set a percentage width (handy for putting Name and Email side by side at 50%), add placeholder and help text, and toggle whether the field is required.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For a service-business quote form, a solid field lineup looks like this:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Name<\/strong> (Text, required) and <strong>Email<\/strong> (Email, required): the defaults, keep them.<\/li>\n\n\n\n<li><strong>Phone<\/strong> (Text, optional): some clients prefer a call back.<\/li>\n\n\n\n<li><strong>Service needed<\/strong> (Select or Checkbox): your main services as options, so requests arrive pre-sorted.<\/li>\n\n\n\n<li><strong>Budget range<\/strong> (Select): awkward question, useful answer. &#128176;<\/li>\n\n\n\n<li><strong>Preferred start date<\/strong> (Date): separates the &ldquo;next week&rdquo; leads from the &ldquo;someday&rdquo; ones.<\/li>\n\n\n\n<li><strong>Project details<\/strong> (Textarea, required): rename the default Message field and you&rsquo;re done.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Free field types cover text, email, textarea, checkbox, radio, select, number, date, and URL. Hidden fields, file uploads, and Stripe payment fields are <strong>Pro-only<\/strong>. Webhooks, which push submissions into other apps in real time, are also part of Otter Pro&rsquo;s advanced form features.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">&#128161; PRO TIP: If staring at a blank form feels like work, Otter&rsquo;s AI Form option can generate a starting set of fields from a plain-language prompt (&ldquo;a quote request form for a landscaping company&rdquo;). There&rsquo;s one catch: Otter&rsquo;s AI features need an AI provider connected, meaning your own OpenAI API key or the WordPress AI connector. No bundled AI credits. Also note that Regenerate replaces the current form rather than saving versions, so keep a result you like before rolling the dice again.<\/p>\n<\/blockquote>\n\n\n\n<h2 id=\"step-3-email-routing\" class=\"wp-block-heading joli-heading jtoc-heading\">Step 3: Route submissions to the right inbox<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Select the whole form and open <strong>Form Options<\/strong> in the sidebar. This is where submissions go and what the notification email looks like:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Email To:<\/strong> defaults to the site admin. Point it at the inbox that actually answers quotes.<\/li>\n\n\n\n<li><strong>Email Subject:<\/strong> something scannable like &ldquo;New quote request: landscaping.&rdquo;<\/li>\n\n\n\n<li><strong>CC and BCC:<\/strong> loop in a colleague or a shared sales address.<\/li>\n\n\n\n<li><strong>From Name:<\/strong> the sender name on the notification.<\/li>\n\n\n\n<li><strong>Reply-To Email:<\/strong> leave this empty and replies to the notification go straight to the address the visitor typed in. For a quote workflow, that little default saves real time. &#9993;&#65039;<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Two reassuring details. First, every valid submission is saved to the database <em>before<\/em> the email goes out, so a grumpy mail server can&rsquo;t silently eat a lead. Second, you can review all submissions (including any delivery errors) under <strong>Otter Blocks &rarr; Submissions<\/strong> in the dashboard, and viewing them is free. Exporting submissions is an Otter Pro feature.<\/p>\n\n\n<div class=\"wp-block-image blog-img-std-space\">\n<figure class=\"aligncenter size-full\"><img data-opt-id=687330728  fetchpriority=\"high\" decoding=\"async\" width=\"2560\" height=\"1434\" src=\"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-options-panel-scaled-1.png\" alt=\"The Otter Form Options sidebar with Email To, Email Subject, Submissions, CC, BCC, From Name, Redirect on Submit, and Autoresponder settings next to the form fields\" class=\"wp-image-118835\" srcset=\"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1920\/h:1075\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-options-panel-scaled-1.png 2560w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:300\/h:168\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-options-panel-scaled-1.png 300w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1024\/h:574\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-options-panel-scaled-1.png 1024w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:768\/h:430\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-options-panel-scaled-1.png 768w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1536\/h:860\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-options-panel-scaled-1.png 1536w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1920\/h:1075\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-options-panel-scaled-1.png 2048w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:50\/h:28\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-options-panel-scaled-1.png 50w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:428\/h:240\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-options-panel-scaled-1.png 428w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:709\/h:397\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-options-panel-scaled-1.png 709w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1071\/h:600\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-options-panel-scaled-1.png 1071w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:264\/h:148\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-options-panel-scaled-1.png 264w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:348\/h:195\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-options-panel-scaled-1.png 348w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:241\/h:135\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-options-panel-scaled-1.png 241w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1920\/h:1075\/q:mauto\/f:best\/dpr:2\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-options-panel-scaled-1.png 2x\" sizes=\"(max-width: 700px) 100vw, 700px\"><\/figure>\n<\/div>\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">&#128161; PRO TIP: Building a subscribe-style form instead? Otter has marketing integrations for Mailchimp and Brevo, so new signups can flow straight into your mailing list.<\/p>\n<\/blockquote>\n\n\n\n<h2 id=\"step-4-spam\" class=\"wp-block-heading joli-heading jtoc-heading\">Step 4: Turn on spam protection &#128737;&#65039;<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Public forms attract bots the way picnics attract wasps. Otter handles this with a dedicated <strong>Captcha block<\/strong> that sits inside the form: click the <strong>+<\/strong> button within the form, search for &ldquo;Captcha,&rdquo; and add it. Then pick a provider, either <strong>Google reCAPTCHA<\/strong> or <strong>Cloudflare Turnstile<\/strong>, and paste in the matching site key and secret key. You can enter the keys directly in the Captcha block or centrally under <strong>Otter &rarr; Settings &rarr; Integrations<\/strong>. hCaptcha works too, through its own integration.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">One gotcha worth knowing: the captcha only appears on the published form once the provider&rsquo;s keys are saved. If the live form looks exactly the same before and after you add the block, missing keys are the usual suspect. &#127384;<\/p>\n\n\n\n<h2 id=\"step-5-autoresponder\" class=\"wp-block-heading joli-heading jtoc-heading\">Step 5: Set up the autoresponder<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">An autoresponder is the &ldquo;got it, talk soon&rdquo; email the visitor receives after submitting. In the free version, you can customize the subject and body of that message in Form Options, so write something warm, set expectations (&ldquo;replies within one business day&rdquo;), and you&rsquo;re set.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Otter Pro<\/strong> adds <strong>Reply with AI<\/strong> to the autoresponder: instead of one static message, it generates a personalized reply for each submission. You write a prompt describing the reply you want, insert the visitor&rsquo;s actual answers with magic tags, and set a static fallback message on a separate tab for the moments an AI reply can&rsquo;t be generated. It&rsquo;s a nice touch for quote requests, since the confirmation can reference the service the person asked about.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Otter Pro starts at $69 per year for a single site at introductory pricing ($139 list, renewals at full price), with a 30-day money-back guarantee. The <a href=\"https:\/\/themeisle.com\/plugins\/otter-blocks\/pricing\/\" target=\"_blank\" rel=\"noreferrer noopener\">Otter pricing page<\/a> has the full plan breakdown.<\/p>\n\n\n\n<h2 id=\"step-6-style-publish\" class=\"wp-block-heading joli-heading jtoc-heading\">Step 6: Style the form and publish<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The <strong>Style<\/strong> tab handles the looks: colors for labels, input text, and backgrounds, submit button styles for normal and hover states, label sizing and spacing, field padding, and border radius. If you&rsquo;ve configured Otter&rsquo;s global defaults, the form can inherit those colors so it matches the rest of the site without extra fiddling.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Before hitting publish, two finishing touches:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Submit messages:<\/strong> enable them from the Form Options three-dots menu and write a friendly success message (&ldquo;Thanks! Your quote request is in.&rdquo;) plus an error message for server hiccups.<\/li>\n\n\n\n<li><strong>Redirect on Submit:<\/strong> optionally send visitors to a thank-you page after submission. Useful if you track conversions.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Publish the page, then send yourself a real test submission. Check that the notification email arrived, the autoresponder landed, and the entry shows up under Otter Blocks &rarr; Submissions. Here&rsquo;s the kind of finished form visitors will see (this example from the Otter docs includes the Pro-only file upload field at the bottom):<\/p>\n\n\n<div class=\"wp-block-image blog-img-std-space\">\n<figure class=\"aligncenter size-full\"><img data-opt-id=2055826613  fetchpriority=\"high\" decoding=\"async\" width=\"556\" height=\"942\" src=\"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-frontend-example-1.png\" alt=\"A finished Otter form on a live page showing email, text, checkbox, textarea, number, radio, select, URL, and file upload (Otter Pro) fields with a submit button\" class=\"wp-image-118834\" srcset=\"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:556\/h:942\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-frontend-example-1.png 556w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:177\/h:300\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-frontend-example-1.png 177w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:30\/h:50\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-frontend-example-1.png 30w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:142\/h:240\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-frontend-example-1.png 142w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:234\/h:397\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-frontend-example-1.png 234w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:354\/h:600\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-frontend-example-1.png 354w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:87\/h:148\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-frontend-example-1.png 87w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:115\/h:195\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-frontend-example-1.png 115w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:80\/h:135\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-frontend-example-1.png 80w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:556\/h:942\/q:mauto\/f:best\/dpr:2\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/08\/otter-form-frontend-example-1.png 2x\" sizes=\"(max-width: 556px) 100vw, 556px\"><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Done and done. &#127881;<\/p>\n\n\n\n<h2 id=\"honest-limits\" class=\"wp-block-heading joli-heading jtoc-heading\">When a dedicated form plugin is the better tool<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Otter&rsquo;s Form block covers contact forms, quote requests, and subscribe forms well. It&rsquo;s not trying to replace the heavyweights, and pretending otherwise would be a disservice. A dedicated form plugin earns its install when you need:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Conditional logic:<\/strong> showing or hiding fields based on earlier answers (&ldquo;if they pick Wedding, ask for the venue&rdquo;). Otter&rsquo;s form fields don&rsquo;t do this.<\/li>\n\n\n\n<li><strong>Multi-step forms<\/strong> that split long applications across pages.<\/li>\n\n\n\n<li><strong>Calculations:<\/strong> instant price estimates that update as the visitor fills the form in.<\/li>\n\n\n\n<li><strong>Serious entry management:<\/strong> Otter stores every submission and lets you view them free, which covers most small businesses, but exporting entries requires Pro. If your workflow lives in exported spreadsheets, a form plugin with free export (or built-in reporting) fits better.<\/li>\n\n\n\n<li><strong>Polls, surveys, and quizzes<\/strong> with results analysis.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">If that list describes your needs, look at <a href=\"https:\/\/wpforms.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">WPForms<\/a> or <a href=\"https:\/\/fluentforms.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">Fluent Forms<\/a>, both built specifically for complex forms. For everything simpler, one less plugin is one less thing to break on a Tuesday. &#128517;<\/p>\n\n\n\n<h2 id=\"wrapping-up\" class=\"wp-block-heading joli-heading jtoc-heading\">Wrapping up<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The whole build, in recap form:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Install the free Otter Blocks plugin and insert the Form block (Contact Form variation).<\/li>\n\n\n\n<li>Shape the fields around what a quote request actually needs: service, budget, timing, details.<\/li>\n\n\n\n<li>Point submissions at the right inbox and leave Reply-To empty for easy follow-ups.<\/li>\n\n\n\n<li>Drop in the Captcha block so bots bounce off.<\/li>\n\n\n\n<li>Write an autoresponder (Pro can personalize it with AI).<\/li>\n\n\n\n<li>Style it to match the site, test a real submission, publish.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The bottom line: for a service business that needs a clean quote-request or contact form, Otter&rsquo;s Form block does the job without adding a dedicated form plugin to the maintenance pile. For conditional logic, multi-step flows, or calculations, a purpose-built form plugin is worth the extra install.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Once the form is live, Otter can keep earning its keep elsewhere on the site: there&rsquo;s a <a href=\"https:\/\/themeisle.com\/blog\/slider-wordpress\/\">slider block for showcasing work<\/a> and even a <a href=\"https:\/\/themeisle.com\/blog\/ajax-search-wordpress\/\">live search feature<\/a> if the site grows into one. What kind of form are you building first? Drop it in the comments section below! &#128071;<\/p>\n\n\n<style>.ticss-d144f107 strong{font-weight: 700;\n    letter-spacing: -0.2px;\n    line-height: 1.2;\n    display: inline-block;}<\/style>\n\n\n<div class=\"wp-block-columns speed-guide has-white-color has-text-color has-background has-link-color wp-elements-2f81f6c5526477b5b4d52d1ca4513949 is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\" style=\"background-color:#4267cf\">\n<div class=\"wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\">\n<figure class=\"wp-block-image size-medium\"><img data-opt-id=30701221  data-opt-src=\"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:300\/h:300\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png\"  decoding=\"async\" width=\"300\" height=\"300\" src=\"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:300\/h:300\/q:eco\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png\" alt=\"speed guide\" class=\"wp-image-113040\" old-srcset=\"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:300\/h:300\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 300w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1024\/h:1024\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 1024w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:150\/h:150\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 150w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:768\/h:768\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 768w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:50\/h:50\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 50w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:240\/h:240\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 240w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:397\/h:397\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 397w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:600\/h:600\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 600w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:148\/h:148\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 148w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:195\/h:195\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 195w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:135\/h:135\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 135w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1080\/h:1080\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 1200w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1080\/h:1080\/q:mauto\/f:best\/dpr:2\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 2x\"><noscript><img data-opt-id=30701221  decoding=\"async\" width=\"300\" height=\"300\" src=\"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:300\/h:300\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png\" alt=\"speed guide\" class=\"wp-image-113040\" srcset=\"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:300\/h:300\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 300w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1024\/h:1024\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 1024w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:150\/h:150\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 150w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:768\/h:768\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 768w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:50\/h:50\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 50w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:240\/h:240\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 240w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:397\/h:397\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 397w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:600\/h:600\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 600w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:148\/h:148\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 148w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:195\/h:195\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 195w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:135\/h:135\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 135w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1080\/h:1080\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 1200w, https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1080\/h:1080\/q:mauto\/f:best\/dpr:2\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2025\/09\/e2ce20299a807336c68c2e029640adaa1.png 2x\" sizes=\"(max-width: 300px) 100vw, 300px\"></noscript><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<p class=\"has-text-align-center ticss-58e79f2f wp-block-paragraph\" style=\"font-size:14px\"><strong>FREE GUIDE<\/strong><\/p>\n\n\n\n<p class=\"ticss-d144f107 wp-block-paragraph\" style=\"font-size:25px\"><strong>4 Essential Steps to Speed Up Your&nbsp;WordPress Website<\/strong><\/p>\n\n\n\n<p class=\"ticss-3b627beb wp-block-paragraph\">Follow the simple steps in our 4-part mini series and reduce your loading times by 50-80%.&nbsp;&#128640;<\/p>\n\n\n<p><\/p><div class=\"frm_forms  with_frm_style frm_style_themeisle\" id=\"frm_form_4_container\" data-token=\"c966d504b67cbbad9e77978a85c84f8c\">\n<form enctype=\"multipart\/form-data\" method=\"post\" class=\"frm-show-form  frm_pro_form \" id=\"form_site-speed-guide-below-post\" data-token=\"c966d504b67cbbad9e77978a85c84f8c\">\n<div class=\"frm_form_fields \">\n<fieldset>\n<legend class=\"frm_screen_reader\">Site Speed Guide - Below Post<\/legend>\r\n\r\n<div class=\"frm_fields_container\">\n<input type=\"hidden\" name=\"frm_action\" value=\"create\">\n<input type=\"hidden\" name=\"form_id\" value=\"4\">\n<input type=\"hidden\" name=\"frm_hide_fields_4\" id=\"frm_hide_fields_4\" value=\"\">\n<input type=\"hidden\" name=\"form_key\" value=\"site-speed-guide-below-post\">\n<input type=\"hidden\" name=\"item_meta[0]\" value=\"\">\n<input type=\"hidden\" id=\"frm_submit_entry_4\" name=\"frm_submit_entry_4\" value=\"da47cf6211\"><input type=\"hidden\" name=\"_wp_http_referer\" value=\"\/blog\/wp-json\/wp\/v2\/posts\/118282\">\t\t<input type=\"hidden\" name=\"item_meta[18]\" id=\"field_6px6q2\" value=\"\/blog\/wp-json\/wp\/v2\/posts\/118282\" data-frmval=\"\/blog\/wp-json\/wp\/v2\/posts\/118282\">\n\t\t<div id=\"frm_field_15_container\" class=\"frm_form_field form-field  frm_required_field frm_none_container\">\r\n\t<label for=\"field_6px6q\" id=\"field_6px6q_label\" class=\"frm_primary_label\">Your Email\r\n\t\t<span class=\"frm_required\" aria-hidden=\"true\">*<\/span>\r\n\t<\/label>\r\n\t<input type=\"email\" id=\"field_6px6q\" name=\"item_meta[15]\" value=\"\" autocomplete=\"email\" placeholder=\"your@email.com\" data-reqmsg=\"Your Email cannot be blank.\" aria-required=\"true\" data-invmsg=\"Your Email is invalid\" aria-invalid=\"false\">\r\n\t\r\n\t\r\n<\/div>\n<div id=\"frm_field_17_container\" class=\"frm_form_field form-field  frm_none_container vertical_radio\">\r\n\t<div id=\"field_6px6q3_label\" class=\"frm_primary_label\">Subscribe to our newsletter\r\n\t\t<span class=\"frm_required\" aria-hidden=\"true\"><\/span>\r\n\t<\/div>\r\n\t<div class=\"frm_opt_container\" aria-labelledby=\"field_6px6q3_label\" role=\"group\">\t\t<div class=\"frm_checkbox\" id=\"frm_checkbox_17-0\">\t\t\t<label for=\"field_6px6q3-0\">\n\t\t\t<input type=\"checkbox\" name=\"item_meta[17][]\" id=\"field_6px6q3-0\" value=\"true\" data-invmsg=\"Subscribe to our newsletter is invalid\"> Subscribe to our newsletter<\/label><\/div>\n<\/div>\r\n\t\r\n\t\r\n<\/div>\n<div id=\"frm_field_14_container\" class=\"frm_form_field form-field \">\r\n\t<div class=\"frm_submit frm_flex\">\r\n<button class=\"frm_button_submit frm_final_submit\" type=\"submit\" formnovalidate=\"formnovalidate\">FREE ACCESS<\/button>\r\n\r\n\r\n\r\n<\/div>\r\n<\/div>\n\t<input type=\"hidden\" name=\"item_key\" value=\"\">\n\t\t\t<div id=\"frm_field_24_container\">\n\t\t\t<label for=\"field_n2gu8\">\n\t\t\t\tIf you are human, leave this field blank.\t\t\t<\/label>\n\t\t\t<input id=\"field_n2gu8\" type=\"text\" class=\"frm_form_field form-field frm_verify\" name=\"item_meta[24]\" value=\"\">\n\t\t<\/div>\n\t\t<input name=\"frm_state\" type=\"hidden\" value=\"tGKtIG19U6wyYcew8uBttc\/Q2e9k66fw4HgNJmlQlkckdKCs\/l0h48RQnQG\/UFbR\"><\/div>\n<\/fieldset>\n<\/div>\n\n<p style=\"display: none !important;\" class=\"akismet-fields-container\" data-prefix=\"ak_\"><label>&Delta;<textarea name=\"ak_hp_textarea\" cols=\"45\" rows=\"8\" maxlength=\"100\"><\/textarea><\/label><input type=\"hidden\" id=\"ak_js_1\" name=\"ak_js\" value=\"137\"><script>\ndocument.getElementById( \"ak_js_1\" ).setAttribute( \"value\", ( new Date() ).getTime() );\n<\/script>\n<\/p><\/form>\n<\/div>\n\n<\/div>\n<\/div>\n\n","protected":false},"excerpt":{"rendered":"Skip the single-purpose form plugin. Learn how to build a quote-request form with email routing, spam protection, and autoresponders using Otter Blocks.","protected":false},"author":34,"featured_media":118849,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_stopmodifiedupdate":false,"_modified_date":"","_has_post_settings":[],"_themeisle_gutenberg_block_has_review":false,"footnotes":""},"categories":[272],"tags":[],"hashtags":[],"class_list":["post-118282","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-wordpress-tutorials"],"wppr_data":{"cwp_meta_box_check":"No"},"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.8 (Yoast SEO v28.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>How to Create a WordPress Contact Form Without a Form Plugin<\/title>\n<meta name=\"description\" content=\"Skip the single-purpose form plugin. Learn how to build a quote-request form with email routing, spam protection, and autoresponders using Otter Blocks.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/themeisle.com\/blog\/wordpress-form-without-plugin\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Create a WordPress Contact Form Without a Form Plugin\" \/>\n<meta property=\"og:description\" content=\"Skip the single-purpose form plugin. Learn how to build a quote-request form with email routing, spam protection, and autoresponders using Otter Blocks.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/themeisle.com\/blog\/wordpress-form-without-plugin\/\" \/>\n<meta property=\"og:site_name\" content=\"Themeisle Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-09-11T18:09:32+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1920\/h:960\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/09\/Contact-Form-Without-a-Form-Plugin.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2180\" \/>\n\t<meta property=\"og:image:height\" content=\"1090\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Themeisle Editorial\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@ThemeIsle\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Themeisle Editorial\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"16 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-form-without-plugin\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-form-without-plugin\\\/\"},\"author\":{\"name\":\"Themeisle Editorial\",\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/#\\\/schema\\\/person\\\/844b0a2dc66556309f9a5ae28ae87ffe\"},\"headline\":\"How to Create a WordPress Contact Form Without a Form Plugin\",\"datePublished\":\"2026-09-11T18:09:32+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-form-without-plugin\\\/\"},\"wordCount\":1712,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-form-without-plugin\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\/\\/themeisle.com\\/blog\\/wp-content\\/uploads\\/2026\\/09\\/Contact-Form-Without-a-Form-Plugin.jpg\",\"articleSection\":[\"WordPress Tutorials\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-form-without-plugin\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-form-without-plugin\\\/\",\"url\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-form-without-plugin\\\/\",\"name\":\"How to Create a WordPress Contact Form Without a Form Plugin\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-form-without-plugin\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-form-without-plugin\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\/\\/themeisle.com\\/blog\\/wp-content\\/uploads\\/2026\\/09\\/Contact-Form-Without-a-Form-Plugin.jpg\",\"datePublished\":\"2026-09-11T18:09:32+00:00\",\"description\":\"Skip the single-purpose form plugin. Learn how to build a quote-request form with email routing, spam protection, and autoresponders using Otter Blocks.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-form-without-plugin\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-form-without-plugin\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-form-without-plugin\\\/#primaryimage\",\"url\":\"https:\\/\\/themeisle.com\\/blog\\/wp-content\\/uploads\\/2026\\/09\\/Contact-Form-Without-a-Form-Plugin.jpg\",\"contentUrl\":\"https:\\/\\/themeisle.com\\/blog\\/wp-content\\/uploads\\/2026\\/09\\/Contact-Form-Without-a-Form-Plugin.jpg\",\"width\":2180,\"height\":1090,\"caption\":\"Contact Form Without a Form Plugin\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/wordpress-form-without-plugin\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Blog\",\"item\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Create a WordPress Contact Form Without a Form Plugin\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/\",\"name\":\"Themeisle Blog\",\"description\":\"WordPress Tutorials and Reviews for Beginners and Advanced\",\"publisher\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/#organization\",\"name\":\"VertiStudio\",\"alternateName\":\"Vertigo Studio SA\",\"url\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\/\\/themeisle.com\\/blog\\/wp-content\\/uploads\\/2024\\/02\\/VertiStudio_logo1.png\",\"contentUrl\":\"https:\\/\\/themeisle.com\\/blog\\/wp-content\\/uploads\\/2024\\/02\\/VertiStudio_logo1.png\",\"width\":718,\"height\":156,\"caption\":\"VertiStudio\"},\"image\":{\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/#\\\/schema\\\/person\\\/844b0a2dc66556309f9a5ae28ae87ffe\",\"name\":\"Themeisle Editorial\",\"description\":\"We\\\\'re the crew behind Themeisle Blog, where we eat, sleep, and breathe WordPress, website building, and all things blogging. Under the leadership of Karol K, our team is composed of WordPress wizards, web design junkies, and blogging enthusiasts. Between us, we\\\\'ve got a boatload of experience (like, 50+ years worth!) in making the digital world more accessible and fun.\",\"sameAs\":[\"https:\\\/\\\/themeisle.com\\\/blog\\\/\",\"https:\\\/\\\/x.com\\\/ThemeIsle\",\"https:\\\/\\\/www.youtube.com\\\/@ThemeIsle\"],\"url\":\"https:\\\/\\\/themeisle.com\\\/blog\\\/author\\\/editorial\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to Create a WordPress Contact Form Without a Form Plugin","description":"Skip the single-purpose form plugin. Learn how to build a quote-request form with email routing, spam protection, and autoresponders using Otter Blocks.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/themeisle.com\/blog\/wordpress-form-without-plugin\/","og_locale":"en_US","og_type":"article","og_title":"How to Create a WordPress Contact Form Without a Form Plugin","og_description":"Skip the single-purpose form plugin. Learn how to build a quote-request form with email routing, spam protection, and autoresponders using Otter Blocks.","og_url":"https:\/\/themeisle.com\/blog\/wordpress-form-without-plugin\/","og_site_name":"Themeisle Blog","article_published_time":"2026-09-11T18:09:32+00:00","og_image":[{"width":2180,"height":1090,"url":"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:1920\/h:960\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/09\/Contact-Form-Without-a-Form-Plugin.jpg","type":"image\/jpeg"}],"author":"Themeisle Editorial","twitter_card":"summary_large_image","twitter_creator":"@ThemeIsle","twitter_misc":{"Written by":"Themeisle Editorial","Est. reading time":"16 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/themeisle.com\/blog\/wordpress-form-without-plugin\/#article","isPartOf":{"@id":"https:\/\/themeisle.com\/blog\/wordpress-form-without-plugin\/"},"author":{"name":"Themeisle Editorial","@id":"https:\/\/themeisle.com\/blog\/#\/schema\/person\/844b0a2dc66556309f9a5ae28ae87ffe"},"headline":"How to Create a WordPress Contact Form Without a Form Plugin","datePublished":"2026-09-11T18:09:32+00:00","mainEntityOfPage":{"@id":"https:\/\/themeisle.com\/blog\/wordpress-form-without-plugin\/"},"wordCount":1712,"commentCount":0,"publisher":{"@id":"https:\/\/themeisle.com\/blog\/#organization"},"image":{"@id":"https:\/\/themeisle.com\/blog\/wordpress-form-without-plugin\/#primaryimage"},"thumbnailUrl":"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/09\/Contact-Form-Without-a-Form-Plugin.jpg","articleSection":["WordPress Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/themeisle.com\/blog\/wordpress-form-without-plugin\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/themeisle.com\/blog\/wordpress-form-without-plugin\/","url":"https:\/\/themeisle.com\/blog\/wordpress-form-without-plugin\/","name":"How to Create a WordPress Contact Form Without a Form Plugin","isPartOf":{"@id":"https:\/\/themeisle.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/themeisle.com\/blog\/wordpress-form-without-plugin\/#primaryimage"},"image":{"@id":"https:\/\/themeisle.com\/blog\/wordpress-form-without-plugin\/#primaryimage"},"thumbnailUrl":"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/09\/Contact-Form-Without-a-Form-Plugin.jpg","datePublished":"2026-09-11T18:09:32+00:00","description":"Skip the single-purpose form plugin. Learn how to build a quote-request form with email routing, spam protection, and autoresponders using Otter Blocks.","breadcrumb":{"@id":"https:\/\/themeisle.com\/blog\/wordpress-form-without-plugin\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/themeisle.com\/blog\/wordpress-form-without-plugin\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/themeisle.com\/blog\/wordpress-form-without-plugin\/#primaryimage","url":"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/09\/Contact-Form-Without-a-Form-Plugin.jpg","contentUrl":"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2026\/09\/Contact-Form-Without-a-Form-Plugin.jpg","width":2180,"height":1090,"caption":"Contact Form Without a Form Plugin"},{"@type":"BreadcrumbList","@id":"https:\/\/themeisle.com\/blog\/wordpress-form-without-plugin\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog","item":"https:\/\/themeisle.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to Create a WordPress Contact Form Without a Form Plugin"}]},{"@type":"WebSite","@id":"https:\/\/themeisle.com\/blog\/#website","url":"https:\/\/themeisle.com\/blog\/","name":"Themeisle Blog","description":"WordPress Tutorials and Reviews for Beginners and Advanced","publisher":{"@id":"https:\/\/themeisle.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/themeisle.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/themeisle.com\/blog\/#organization","name":"VertiStudio","alternateName":"Vertigo Studio SA","url":"https:\/\/themeisle.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/themeisle.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2024\/02\/VertiStudio_logo1.png","contentUrl":"https:\/\/mllj2j8xvfl0.i.optimole.com\/cb:c5QE.37290\/w:auto\/h:auto\/q:mauto\/f:best\/https:\/\/themeisle.com\/blog\/wp-content\/uploads\/2024\/02\/VertiStudio_logo1.png","width":718,"height":156,"caption":"VertiStudio"},"image":{"@id":"https:\/\/themeisle.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/themeisle.com\/blog\/#\/schema\/person\/844b0a2dc66556309f9a5ae28ae87ffe","name":"Themeisle Editorial","description":"We\\'re the crew behind Themeisle Blog, where we eat, sleep, and breathe WordPress, website building, and all things blogging. Under the leadership of Karol K, our team is composed of WordPress wizards, web design junkies, and blogging enthusiasts. Between us, we\\'ve got a boatload of experience (like, 50+ years worth!) in making the digital world more accessible and fun.","sameAs":["https:\/\/themeisle.com\/blog\/","https:\/\/x.com\/ThemeIsle","https:\/\/www.youtube.com\/@ThemeIsle"],"url":"https:\/\/themeisle.com\/blog\/author\/editorial\/"}]}},"_links":{"self":[{"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/posts\/118282","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/users\/34"}],"replies":[{"embeddable":true,"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/comments?post=118282"}],"version-history":[{"count":3,"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/posts\/118282\/revisions"}],"predecessor-version":[{"id":118837,"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/posts\/118282\/revisions\/118837"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/media\/118849"}],"wp:attachment":[{"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/media?parent=118282"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/categories?post=118282"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/tags?post=118282"},{"taxonomy":"hashtags","embeddable":true,"href":"https:\/\/themeisle.com\/blog\/wp-json\/wp\/v2\/hashtags?post=118282"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}