JSON-LD के रूप में Schema.org मार्कअप का उपयोग करने के लिए कोड में आदर्श स्थान कहां है?


9

JSON-LD का उपयोग करने वाले स्कीमा। मार्कअप को लगाने के लिए सबसे अच्छी जगह कहाँ है? कुछ अंदर की सलाह देते हैं <head>लेकिन स्क्रिप्ट इनलाइन भी काम करती हैं। MVC में उन्हें नियंत्रकों के समान दायरे में रखना आसान होगा, इसलिए इसका अर्थ है कि उनके तत्व के पास इनलाइन। लेकिन JSON-LD एक बड़ी स्क्रिप्ट / स्टैक के रूप में "बेहतर काम" कर सकता है <head>। मुझे लगता है कि मैं आदर्श स्थान के बारे में अनिश्चित हूं।

उदाहरण ब्रेडक्रंब होगा - क्या मुझे केवल JSON-LD स्क्रिप्ट को टुकड़ों के लिए मार्कअप से पहले रखना चाहिए, या क्या मुझे मॉडल (फिर से) को लोड करने की सभी परेशानी से गुजरना चाहिए ताकि उन्हें क्षेत्र बनाने में परिभाषित किया जा सके <head>? ऐसा लगता है कि यह एक प्रदर्शन हिट होगा, लेकिन अगर इसके लिए इसके लायक है, तो इसे करने की आवश्यकता है।

यहाँ JSON-LD में संगठन का एक उदाहरण है (यह <head>पहले से ही होगा):

<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" : "dude@example.com"
},
"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>

और यहां ब्रेडक्रंब स्निपेट है (वर्तमान में एक और दायरे में रहता है, आगे नेत्रहीन रूप से प्रदान किए गए टुकड़ों के पास पृष्ठ)। अगर यह इसके लायक है, तो इसे सिर में लेना अच्छा रहेगा:

<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>

जवाबों:


8

JSON-LD परवाह नहीं करता है । जो समझ में आता है, क्योंकि डेटा एक ही है, कोई बात नहीं जहां से दस्तावेज़ में इसे निकाला जाता है।

HTML के परिप्रेक्ष्य से, आपको केवल इसे शामिल करना चाहिए headयदि JSON-LD आपके वेब पेज के बारे में है या आपके वेब पेज का प्रतिनिधित्व करता है, क्योंकि headतत्व में दस्तावेज़ के लिए मेटाडेटा समाहित है । लेकिन यह हमेशा परिभाषित करना आसान नहीं है कि क्या कुछ मेटाडेटा के रूप में गिना जाता है या नहीं; मैं इस बारे में बहुत ज्यादा चिंता नहीं करेगा।


के बारे में समझ में आता है <सिर> सोचा - वहाँ संगठन छोड़ने की संभावना खत्म हो जाएगा .... मुझे लगता है कि यह "मेटा" के रूप में मायने रखता है हर एक पृष्ठ पर इसके अर्थ में पर्याप्त है और प्रति-पहचान "टैग" प्रदान करता है।
ढपीन

और head, पेज रेंडरिंग को रोकने के लिए कोड का एक और टुकड़ा नहीं है? मैं सोच रहा था कि इससे पहले कि </body>बेहतर हो सकता है
जोओ पिमेंटेल फरेरा

1
@ JoãoPimentelFerreira: मुझे उम्मीद है कि यह ब्लॉक नहीं करेगा, क्योंकि यह एक डेटा ब्लॉक है, स्क्रिप्ट नहीं (ये दोनों scriptतत्व का उपयोग करते हैं , लेकिन वे तकनीकी रूप से अलग-अलग मामले हैं)। ब्राउज़र किसी भी डेटा ब्लॉक को पूरी तरह से अनदेखा कर सकते हैं। लेकिन मुझे नहीं पता कि ब्राउज़र वास्तव में क्या करते हैं।
unor
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.