Di mana tempat terbaik untuk meletakkan markup Schema.org yang menggunakan JSON-LD? Beberapa merekomendasikan di dalam <head>
tetapi skrip bekerja inline juga. Akan lebih mudah dalam sebuah MVC untuk menempatkan mereka dalam ruang lingkup yang sama dengan pengendali, sehingga itu berarti segaris dekat elemen mereka. Tetapi JSON-LD dapat "bekerja lebih baik" sebagai satu skrip / tumpukan besar di <head>
. Saya hanya tidak yakin dengan lokasi yang ideal.
Contohnya adalah remah roti - haruskah saya menempatkan skrip JSON-LD sebelum markup untuk remah, atau haruskah saya melewati semua kesulitan memuat model (lagi) untuk mendefinisikannya di area pembuatan <head>
? Sepertinya itu akan menjadi hit kinerja, tetapi jika itu layak untuk spek, maka perlu dilakukan.
Berikut ini adalah contoh dari Organisasi di JSON-LD (ini <head>
sudah ada di ):
<script type="application/ld+json"> {
"@context" : "http://schema.org",
"@type" : "Organization",
"name" : "A Huge Corporation",
"url" : "http://www.example.com",
"logo" : "http://www.example.com/huge-corporation.png",
"founder" : "Humanz",
"foundingDate" : "1268",
"sameAs" : "http://plus.google.com/111111111111111111111",
"contactPoint" : {
"@type" : "ContactPoint",
"contactType" : "Customer Service",
"telephone" : "+1-888-888-8888",
"faxNumber" : "+1-777-777-7777",
"contactOption" : "TollFree",
"areaServed" : "US",
"availableLanguage" : "English",
"email" : "[email protected]"
},
"hasPos" : {
"@type" : "Place",
"name" : "The Branch or Store",
"photo" : "http://www.example.com/store.png",
"hasMap" : {
"@type" : "Map",
"url" : "https://maps.google.com/maps?q=feed_me_a_map"
},
"address" : {
"@type" : "PostalAddress",
"name" : "The Branch or Store",
"streetAddress" : "1547 Main Street",
"addressLocality" : "Beverly Hills",
"addressRegion" : "CA",
"postalCode" : "90210",
"addressCountry" : "United States"
}
}}
</script>
Dan di sini adalah cuplikan remah roti (saat ini berada di lingkup lain, lebih jauh ke bawah halaman dekat remah-remah yang diberikan secara visual). Akan menyenangkan untuk memahami hal ini, jika pekerjaan itu sepadan:
<script type="application/ld+json"> {
"@context" : "http://schema.org",
"@type" : "Breadcrumblist",
"itemListElement" : [
{
"@type" : "ListItem",
"position" : 1,
"item" : {
"@id" : "http:www.example.com",
"name" : "Home"
}
},
{
"@type" : "ListItem",
"position" : 2,
"item" : {
"@id" : "http:www.example.com/widgets",
"name" : "Widgets"
}
},
{
"@type" : "ListItem",
"position" : 3,
"item" : {
"@id" : "http:www.example.com/widgets/green",
"name" : "Green Widgets"
}
}
]}
</script>
sumber
head
, bukankah sepotong kode lagi memblokir pemblokiran halaman? Saya bertanya-tanya sebelum itu</body>
bisa lebih baik karena ituscript
elemen, tetapi mereka secara teknis berbeda kasus). Browser dapat sepenuhnya mengabaikan blok data apa pun. Tapi saya tidak tahu apa yang sebenarnya dilakukan browser.