[英]Does Schema.org markup work if markup is dynamically built with JavaScript?
我有一個頁面,通過使用JavaScript讀取一些JSON動態加載一些事件。 我使用Event
Schema.org標記為每個事件構建一個div
。
Google的測試工具不會讀取此標記。 是因為標記中的錯誤,還是因為動態加載?
一個Event
的HTML代碼是:
<div class="evento well" itemscope itemtype="http://schema.org/Event">
<meta itemprop="startDate" content="2015-03-20T20:00:00.000Z">
<meta itemprop="endDate" content="2015-01-21T20:00:00.000Z">
<div class="dataEvento">
<div class="dayWeekEvento">venerdì</div>
<div class="dayNumEvento">20</div>
<div class="monthEvento">Marzo</div>
</div>
<div class="datiEvento">
<div class="oraEvento">ore 21:00</div>
<div class="titoloEvento"><span itemprop="name">Titolo evento</span></div>
<div class="luogoEvento" itemprop="address" itemscope="" itemtype="http://schema.org/PostalAddress"><a href="https://www.google.it/maps/place/Milano" target="_blank"><span class=" glyphicon glyphicon-map-marker" aria-hidden="true"></span> <span itemprop="addressLocality">Milano</span></a></div>
</div>
</div>
如果您在使用Google測試工具驗證模式標記時遇到問題,可以使用JS創建json-ld片段,這也允許您在需要時操作數據,如:
<script>
(function(){
var data = {
"@context": "http://www.schema.org",
...
}
var script = document.createElement('script');
script.type = "application/ld+json";
script.innerHTML = JSON.stringify(data);
document.getElementsByTagName('head')[0].appendChild(script);
})(document);
</script>
這取決於它是什么類型的標記。 來自Google :
所有Knowledge Graph功能,附加鏈接搜索框,Event Rich Snippets和Recipe Rich Snippets都支持JSON-LD; Google建議將JSON-LD用於這些功能。 對於剩余的Rich Snippets類型和面包屑,Google建議使用微數據或RDFa。
它應該工作,但我知道人們已經報告了測試工具的問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.