Ho una pagina in cui alcuni eventi vengono caricati dinamicamente leggendo alcuni JSON con JavaScript. Costruisco un div
per ogni evento con il markup Schema.org Event
.Il markup Schema.org funziona se il markup è costruito dinamicamente con JavaScript?
Lo strumento di test di Google non legge questo codice. È a causa di un errore nel markup o è dovuto al caricamento dinamico?
Il codice HTML di una Event
è:
<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>
è necessario aggiungere il codice effettivo che è stato utilizzato, altrimenti non possiamo cercare di vedere se c'è un errore nel nostro codice – Jonathan
La risposta breve è ** no **: Google esegue solo la scansione del codice statico della pagina. Quelli mens che dovrai fornire i microtag nel markup che è eother sul lato server statico o renderizzato. Se utilizzi un pesante framework javaScript come Backbone, Angular, Ember e così via, hai la possibilità di rendere tutte le tue pagine rese da un servizio e di essere salvate sotto lo stesso URL, ma con un #! (Hashbang). Google, Bing e Yahoo (e alcuni altri) proveranno ad indicizzare gli URL di hashbang invece di quelli originali. – Rias