सदस्यता और paywall की वजह से न दिखने वाले कॉन्टेंट के लिए स्ट्रक्चर्ड डेटा (CreativeWork)

यह पेज, आपकी साइट पर CreativeWork प्रॉपर्टी से paywall किया गया कॉन्टेंट दिखाने के लिए, schema.org JSON-LD के इस्तेमाल का तरीका बताता है. यह स्ट्रक्चर्ड डेटा, paywall किया गया कॉन्टेंट और स्पैम से जुड़ी नीतियां का उल्लंघन करने वाली क्लोकिंग के बीच फ़र्क़ समझने और उनकी पहचान करने में Google की मदद करता है. सदस्यता और paywall किए गए कॉन्टेंट के बारे में ज़्यादा जानें.

उदाहरण

paywall किए गए कॉन्टेंट वाले NewsArticle स्ट्रक्चर्ड डेटा का एक उदाहरण यहां दिया गया है.

<html>
  <head>
    <title>Article headline</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "NewsArticle",
      "headline": "Article headline",
      "image": "https://example.org/thumbnail1.jpg",
      "datePublished": "2025-02-05T08:00:00+08:00",
      "dateModified": "2025-02-05T09:20:00+08:00",
      "author": {
        "@type": "Person",
        "name": "John Doe"
      },
      "description": "A most wonderful article",
      "isAccessibleForFree": "False",
      "hasPart":
        {
        "@type": "WebPageElement",
        "isAccessibleForFree": "False",
        "cssSelector" : ".paywall"
        }
    }
    </script>
  </head>
  <body>
    <div class="non-paywall">
      Non-Paywalled Content
    </div>
    <div class="paywall">
      Paywalled Content
    </div>
  </body>
</html>

दिशा-निर्देश

अगर आपको अपना पेज खोज के नतीजों में दिखाना है, तो इसके लिए आपको स्ट्रक्चर्ड डेटा के सामान्य दिशा-निर्देशों और तकनीकी दिशा-निर्देशों का पालन करना होगा. इसके साथ ही, paywall किए गए कॉन्टेंट पर नीचे दिए दिशा-निर्देश लागू होते हैं:

  • JSON-LD और माइक्रोडेटा फ़ॉर्मैट, ऐसे मान्य तरीके हैं जिनसे paywall किए गए कॉन्टेंट के लिए स्ट्रक्चर्ड डेटा तय किया जाता है.
  • कॉन्टेंट के सेक्शन नेस्ट न करें.
  • cssSelector प्रॉपर्टी के लिए सिर्फ़ .class सिलेक्टर का इस्तेमाल करें.

paywall किए गए कॉन्टेंट में मार्कअप जोड़ना

अगर आपकी वेबसाइट के कॉन्टेंट को इस्तेमाल करने के लिए सदस्यता लेनी ज़रूरी है या यह ज़रूरी है कि उपयोगकर्ता रजिस्टर करके ही उस कॉन्टेंट का इस्तेमाल करें जिसे आपको इंंडेक्स कराना है, तो यहां दिया गया तरीका अपनाएं. नीचे दिया गया उदाहरण NewsArticle स्ट्रक्चर्ड डेटा पर लागू होता है. अपने पेज के सभी वर्शन के लिए यह तरीका ज़रूर अपनाएं. इन वर्शन में, एएमपी और बिना एएमपी वाले वर्शन भी शामिल हैं.

  1. अपने पेज के paywall किए गए हर सेक्शन के साथ किसी कैटगरी का नाम जोड़ें. उदाहरण के लिए:
    <body>
    <p>This content is outside a paywall and is visible to all.</p>
    <div class="paywall">This content is inside a paywall, and requires a subscription or registration.</div>
    </body>
  2. NewsArticle स्ट्रक्चर्ड डेटा जोड़ें.
  3. अपने NewsArticle स्ट्रक्चर्ड डेटा में, हाइलाइट किया गया JSON-LD स्ट्रक्चर्ड डेटा जोड़ें.
    {
      "@context": "https://schema.org",
      "@type": "NewsArticle",
      "mainEntityOfPage": {
        "@type": "WebPage",
        "@id": "https://example.org/article"
      },
      (...)
      "isAccessibleForFree": "False",
      "hasPart": {
        "@type": "WebPageElement",
        "isAccessibleForFree": "False",
        "cssSelector": ".paywall"
      }
    }

paywall किए गए कई सेक्शन

अगर आपके किसी पेज पर paywall किए गए कई सेक्शन हैं, तो कैटगरी के नामों को एक खास क्रम में जोड़ें.

किसी पेज पर paywall किए गए एक से ज़्यादा सेक्शन का एक उदाहरण यहां दिया गया है:

<body>
<div class="section1">This content is inside a paywall, and requires a subscription or registration.</div>
<p>This content is outside a paywall and is visible to all.</p>
<div class="section2">This is another section that's inside a paywall, and requires a subscription or registration.</div>
</body>

यहां NewsArticle स्ट्रक्चर्ड डेटा का उदाहरण दिया गया है, जिसमें paywall किए गए कई सेक्शन शामिल हैं.

{
  "@context": "https://schema.org",
  "@type": "NewsArticle",
  "mainEntityOfPage": {
    "@type": "WebPage",
    "@id": "https://example.org/article"
  },
  (...)
  "isAccessibleForFree": "False",
  "hasPart": [
    {
      "@type": "WebPageElement",
      "isAccessibleForFree": "False",
      "cssSelector": ".section1"
    }, {
      "@type": "WebPageElement",
      "isAccessibleForFree": "False",
      "cssSelector": ".section2"
    }
  ]
}

इस तरह के कोड काम करते हैं

यह मार्कअप, CreativeWork या इनमें से किसी खास तरह के CreativeWork के साथ काम करता है:

कई तरह के schema.org इस्तेमाल किए जा सकते हैं, जैसे:

"@type": ["Article", "LearningResource"]

एएमपी वाले स्ट्रक्चर्ड डेटा के लिए इन बातों पर ध्यान दें

अगर आप एएमपी पेजों का इस्तेमाल करते हैं, तो इन बातों को ध्यान में रखें:

  • अगर आपके पास paywall किए गए कॉन्टेंट वाला एएमपी पेज है, तो जहां सही हो वहां amp-subscriptions का इस्तेमाल करें.
  • पक्का करें कि आपका अनुमति देने वाला एंडपॉइंट, Google और दूसरे सर्च इंजन के सही बॉट को कॉन्टेंट का ऐक्सेस देता हो. यह हर पब्लिशर के मुताबिक अलग-अलग होता है.
  • यह ज़रूरी है कि एएमपी और बिना एएमपी वाले पेजों को ऐक्सेस करने के लिए, बॉट पर एक ही नीति लागू हो. ऐसा न होने पर गड़बड़ियां आ सकती हैं, जिनकी वजह से शायद कॉन्टेंट मेल न खाए. ये गड़बड़ियां Search Console में दिखती हैं.

पक्का करना कि Google आपके पेज क्रॉल और इंडेक्स कर पाए

अगर आप चाहते हैं कि paywall किए गए सेक्शन के साथ-साथ Google आपके पूरे पेज को क्रॉल और इंडेक्स करे, तो पक्का कर लें कि Googlebot और Googlebot-News ज़रूरत पड़ने पर आपके पेज को ऐक्सेस कर सकें.

यह जांचने के लिए कि Google आपकी साइट पर यूआरएल को कैसे क्रॉल और रेंडर करता है, यूआरएल जांचने वाला टूल इस्तेमाल करें.

यह कंट्रोल करना कि खोज के नतीजों में क्या जानकारी दिखे

अगर आपको Google को अपने पेज के कैश में स्टोर हुआ लिंक देखने से रोकना है, तो noarchive robots meta टैग का इस्तेमाल करें.

खोज के नतीजों के स्निपेट में आपके कॉन्टेंट के खास सेक्शन न दिखें, इसके लिए data-nosnippet एचटीएमएल एट्रिब्यूट का इस्तेमाल करें. आपके पास max-snippet robots meta टैग का इस्तेमाल करके, यह भी तय करने का विकल्प है कि किसी खोज नतीजे के स्निपेट में ज़्यादा से ज़्यादा कितने वर्ण हों.

समस्या का हल करना

अगर आपको स्ट्रक्चर्ड डेटा लागू करने या डीबग करने में कोई समस्या आ रही है, तो यहां कुछ ऐसे रिसॉर्स दिए गए हैं जिनसे आपको मदद मिल सकती है.