AMP JSON-LD динамический контент
Я хотел бы сохранить содержимое моего скрипта JSON-LD динамическим. Однако AMP не позволяет мне использовать Javascript, и сценарий должен быть в голове.
Поддержание динамического содержимого тела не является проблемой из-за списка ампер.
<head>
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "NewsArticle",
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "www.google.com"
},
"headline": "???"
}
</script>
</head>
<body>
<amp-list layout="fixed-height" height="100vh" width="auto" src="www.google.com/json" class="m1">
<template type="amp-mustache" id="amp-template-id">
<p>{{title}}</p>
</template>
</amp-list>
</body>
Заголовок статьи можно найти в теге amp-list с помощью {{}}. Мне нужно это значение в json-ld в заголовке как значение для заголовка. Любые предложения о том, как это сделать?
1 ответ
Решение
Вы можете использовать Microdata вместо JSON-LD для разметки ваших документов. Таким образом, метаданные будут встроены в ваш контент и могут быть сгенерированы через список amp:
<amp-list layout="fixed-height" height="100vh" width="auto" src="www.google.com/json" class="m1">
<template type="amp-mustache" id="amp-template-id">
<h1 itemprop="headline">{{title}}</h1>
<h2 itemprop="author" itemscope itemtype="https://schema.org/Person">
<span itemprop="name">{{author}}</span>
</h2>
...
</template>
</amp-list>
Вот полный образец микроданных.