I am attempting to use knowledge tags to add several FAQs to a page. I would of course want the page to contain schema markup that is compatible with Google’s Rich Results.
When I link a single FAQ entity using knowledge tags, the page is eligible for Rich Results. With multiple FAQs, the page fails Rich Results tests. (I am using https://search.google.com/test/rich-results to test eligibility.) This does not necessarily occur for other entity types, eg. when adding multiple Locations via Knowledge Tags, I have eligible schema.
Here is example HTML that I have been using to test (with account_id and key redacted):
<html>
<head>
<script async
src="https://knowledgetags.yextpages.net/embed?key=[[REDACTED]]&account_id=[[REDACTED]]&entity_id=FAQ-1&entity_id=FAQ-2&locale=en"
type="text/javascript"></script>
</head>
<body>
<h1>FAQs</h1>
<div>
<h2><span data-yext-field="question" data-yext-id="FAQ-1">loading...</span></h2>
<p><span data-yext-field="answer" data-yext-id="FAQ-1">loading...</span></p>
</div>
<div>
<h2><span data-yext-field="question" data-yext-id="FAQ-2">loading...</span></h2>
<p><span data-yext-field="answer" data-yext-id="FAQ-2">loading...</span></p>
</div>
</body>
</html>
This gives a failed result, as seen here:
Checking the resulting schema, linking multiple FAQs results in multiple FAQPage types being added to the page - each with a single question - where instead there should be one FAQPage with multiple Questions. Viewing the “Customize Schema.org Markup” option for FAQs confirms this, as I see the following, even in a brand-new sandbox environment in Hitchhikers, using default FAQ Entity types:
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"acceptedAnswer": {
"@type": "Answer",
"text": "$answer"
},
"name": "$name"
}
],
"url": "$landingPageUrl"
}
How should I go about linking multiple FAQs using knowledge tags? I could theorectically customize the schema and remove the FAQPage type and mainEntity, eg.
{
"@context": "https://schema.org",
"@type": "Question",
"acceptedAnswer": {
"@type": "Answer",
"text": "$answer"
},
"name": "$name"
"url": "$landingPageUrl"
}
If I were to do this, however, how would I then enclose the Questions in a single FAQPage object?
Thank you for your assistance.