SEO FAQ Schema Generator
Add your questions and answers to generate Google-ready JSON-LD Schema markup.
Items to Include:
Generated JSON-LD Schema:
No items added yet.
'; document.getElementById('output-area').style.display = 'none'; return; } for (var i = 0; i < faqItems.length; i++) { var itemDiv = document.createElement('div'); itemDiv.style.padding = '10px'; itemDiv.style.borderBottom = '1px solid #f1f5f9'; itemDiv.style.display = 'flex'; itemDiv.style.justifyContent = 'space-between'; itemDiv.style.alignItems = 'center'; var textSpan = document.createElement('span'); textSpan.innerHTML = 'Q: ' + faqItems[i].question; textSpan.style.fontSize = '14px'; var delBtn = document.createElement('button'); delBtn.innerHTML = 'Remove'; delBtn.style.background = '#ef4444'; delBtn.style.color = 'white'; delBtn.style.border = 'none'; delBtn.style.padding = '5px 10px'; delBtn.style.borderRadius = '4px'; delBtn.style.cursor = 'pointer'; delBtn.style.fontSize = '12px'; delBtn.setAttribute('onclick', 'removeFaqItem(' + i + ')'); itemDiv.appendChild(textSpan); itemDiv.appendChild(delBtn); container.appendChild(itemDiv); } } function generateSchema() { if (faqItems.length === 0) return; var schema = { "@context": "https://schema.org", "@type": "FAQPage", "mainEntity": [] }; for (var j = 0; j < faqItems.length; j++) { schema.mainEntity.push({ "@type": "Question", "name": faqItems[j].question, "acceptedAnswer": { "@type": "Answer", "text": faqItems[j].answer } }); } var output = document.getElementById('schema-output'); output.textContent = '\n' + JSON.stringify(schema, null, 2) + '\n'; document.getElementById('output-area').style.display = 'block'; } function copySchema() { var text = document.getElementById('schema-output').textContent; var dummy = document.createElement("textarea"); document.body.appendChild(dummy); dummy.value = text; dummy.select(); document.execCommand("copy"); document.body.removeChild(dummy); alert('Schema copied to clipboard!'); }