विज्ञापन एक्सटेंशन स्क्रिप्ट माइग्रेट करना

इस दस्तावेज़ में उन स्क्रिप्ट के लिए माइग्रेशन की प्रक्रिया के बारे में बताया गया है जो विज्ञापन एक्सटेंशन को ऐक्सेस या मैनेज करती हैं. जिन ग्राहकों के पास विज्ञापन एक्सटेंशन अपडेट करने वाली स्क्रिप्ट हैं उनके फ़ीड-आधारित एक्सटेंशन, 28 मार्च, 2022 से एसेट-आधारित नए एक्सटेंशन पर माइग्रेट कर दिए जाएंगे. जिन ग्राहकों के पास विज्ञापन एक्सटेंशन अपडेट करने वाली स्क्रिप्ट है और जिनके पास विज्ञापन एक्सटेंशन अपडेट करने के लिए कोई स्क्रिप्ट नहीं है उनके फ़ीड-आधारित एक्सटेंशन को 13 मई, 2022 से नए ऐसेट-आधारित एक्सटेंशन पर माइग्रेट कर दिया जाएगा.

खास जानकारी

मौजूदा फ़ीड-आधारित एक्सटेंशन मॉडल की जगह अब एसेट-आधारित एक्सटेंशन का इस्तेमाल किया जा रहा है. Google Ads यूज़र इंटरफ़ेस (यूआई) में फ़ीड-आधारित एक्सटेंशन को "लेगसी" एक्सटेंशन कहा जाता है, जबकि Google Ads यूज़र इंटरफ़ेस (यूआई) में एसेट-आधारित एक्सटेंशन को "अपग्रेड किया गया" एक्सटेंशन कहा जाता है.

फ़ीड-आधारित एक्सटेंशन 28 मार्च, 2022 से नए ऐसेट-आधारित एक्सटेंशन पर माइग्रेट कर दिए जाएंगे. ये एक्सटेंशन माइग्रेट होने पर, फ़ीड-आधारित एक्सटेंशन दिखने बंद हो जाएंगे. यह गाइड आपको माइग्रेशन के बारे में बताएगी, चाहे आपके Google Ads खाते में फ़ीड-आधारित और एसेट-आधारित, दोनों विज्ञापन एक्सटेंशन हैं या आपके खाते में सिर्फ़ फ़ीड-आधारित विज्ञापन एक्सटेंशन हैं.

स्थानांतरण विवरण

एसेट पर आधारित विज्ञापन एक्सटेंशन को ऐक्सेस या अपडेट करने के लिए, आपको Google Ads स्क्रिप्ट के नए वर्शन का इस्तेमाल करना होगा. Google Ads के नए स्क्रिप्ट वर्शन के बारे में जानकारी पाने के लिए, शुरुआती निर्देश देखें.

विज्ञापन एक्सटेंशन फ़ेच किए जा रहे हैं

विज्ञापन एक्सटेंशन सिलेक्टर का मौजूदा सेट (उदाहरण के लिए, SitelinkSelector) फ़ीड-आधारित विज्ञापन एक्सटेंशन या ऐसेट-आधारित विज्ञापन एक्सटेंशन में से किसी एक को फ़ेच कर सकता है. डिफ़ॉल्ट रूप से, ये सिलेक्टर इस समय दिखाए जा रहे किसी भी तरह के विज्ञापन एक्सटेंशन को दिखाएंगे. नीचे दी गई टेबल में विज्ञापन एक्सटेंशन के टाइप के बारे में खास जानकारी दी गई है जो फ़िलहाल दिखाए जा रहे हैं (और इसलिए वे डिफ़ॉल्ट रूप से दिखेंगे):

खाते में विज्ञापन एक्सटेंशन का प्रकार
सिर्फ़ फ़ीड-आधारित विज्ञापन एक्सटेंशन फ़ीड-आधारित विज्ञापन एक्सटेंशन डिफ़ॉल्ट रूप से दिखाए जाएंगे
सिर्फ़ ऐसेट पर आधारित विज्ञापन एक्सटेंशन एसेट पर आधारित विज्ञापन एक्सटेंशन, डिफ़ॉल्ट रूप से दिखेंगे
फ़ीड और एसेट पर आधारित विज्ञापन एक्सटेंशन, दोनों पर आधारित विज्ञापन एक्सटेंशन एसेट पर आधारित विज्ञापन एक्सटेंशन, डिफ़ॉल्ट रूप से दिखेंगे

फ़ीड पर आधारित सभी विज्ञापन एक्सटेंशन माइग्रेट होने के बाद, सभी विज्ञापन एक्सटेंशन चुनने वाले टूल, डिफ़ॉल्ट रूप से ऐसेट पर आधारित विज्ञापन एक्सटेंशन दिखाएंगे. हालांकि, withOnlyLegacy तरीके से फ़ीड-आधारित विज्ञापन एक्सटेंशन अब भी फ़ेच किए जा सकते हैं. इससे पुरानी मेट्रिक इकट्ठा करने में मदद मिलती है.

// This will return feed-based sitelink extensions before and after
// March 28, 2022.
const sitelinks = AdsApp.extensions().sitelinks().withOnlyLegacy().get();

ज़्यादातर मामलों में, फ़ीड-आधारित विज्ञापन एक्सटेंशन माइग्रेट होने से पहले या बाद में, कोड में किसी भी तरह के बदलाव की ज़रूरत नहीं होनी चाहिए. हालांकि, कुछ मामलों में कोड बदलने की ज़रूरत पड़ सकती है.

विज्ञापन एक्सटेंशन को आईडी के आधार पर फ़िल्टर करना

फ़ीड-आधारित विज्ञापन एक्सटेंशन को माइग्रेट करने पर, उससे जुड़े एसेट-आधारित विज्ञापन एक्सटेंशन का आईडी अलग होगा. इसका मतलब यह है कि अगर आपकी स्क्रिप्ट फ़िलहाल विज्ञापन एक्सटेंशन को आईडी के आधार पर फ़िल्टर करती है, तो वह एसेट-आधारित विज्ञापन एक्सटेंशन नहीं ला पाएगी.

// If these IDs belong to feed-based sitelink extensions, this code will return
// an empty iterator on or after March 28, 2022 (once the extensions have been
// migrated).
const ids = [123, 456, 789];
const sitelinks = AdsApp.extensions().sitelinks().withIds(ids).get();

इसे ठीक करने के लिए, आपको किसी दूसरे एट्रिब्यूट के हिसाब से फ़िल्टर करना चाहिए या इसके बजाय, ऐसेट-आधारित विज्ञापन एक्सटेंशन आईडी का इस्तेमाल करने के लिए अपना कोड अपडेट करना चाहिए.

आंकड़ों के आधार पर विज्ञापन एक्सटेंशन फ़िल्टर करना

फ़ीड-आधारित विज्ञापन एक्सटेंशन को माइग्रेट करने पर, उससे जुड़े एसेट-आधारित विज्ञापन एक्सटेंशन के आंकड़े रीसेट हो जाएंगे. विज्ञापनों को आंकड़ों के अनुसार फ़िल्टर करते समय, आपको इसे ध्यान में रखना चाहिए. उदाहरण के लिए, अगर आपने LAST_MONTH में Clicks > 100 वाले साइटलिंक एक्सटेंशन का अनुरोध किया है और हाल ही में आपके फ़ीड-आधारित विज्ञापन एक्सटेंशन माइग्रेट किए गए हैं, तो आपको सामान्य से कम विज्ञापन एक्सटेंशन दिख सकते हैं.

अपने विज्ञापन एक्सटेंशन की परफ़ॉर्मेंस रिपोर्ट जनरेट करते समय आपको इस बात का ध्यान रखना चाहिए. फ़ीड पर आधारित विज्ञापन एक्सटेंशन को माइग्रेट करने पर, आपकी रिपोर्ट में काफ़ी उतार-चढ़ाव या गिरावट दिख सकती है.

काम न करने वाले तरीके

माइग्रेशन के दौरान, कई फ़ील्ड अब काम नहीं करते. उदाहरण के लिए, स्निपेट एक्सटेंशन से, शुरू होने की तारीख और खत्म होने की तारीख को हटा दिया गया है. getStartDate() पर किए जाने वाले कॉल के लिए null वापस कर दिए जाएंगे. इसके अलावा, चेतावनी वाला एक मैसेज भी लॉग किया जाएगा. बंद किए गए तरीकों के बारे में जानने के लिए, यहां दी गई टेबल देखें:

कक्षा काम न करने वाले तरीके
कॉलआउट कोई अमान्य तरीका नहीं है
MobileApp getSchedules
PhoneNumber getEndDate
getStartDate
कीमत getEndDate
getSchedules
getStartDate
साइटलिंक कोई अमान्य तरीका नहीं है
स्निपेट getEndDate
getSchedules
getStartDate

विज्ञापन एक्सटेंशन अपडेट किए जा रहे हैं

माइग्रेशन के दौरान, कई फ़ील्ड अब काम नहीं करते. उदाहरण के लिए, स्निपेट एक्सटेंशन से, शुरू होने की तारीख और खत्म होने की तारीख को हटा दिया गया है. setStartDate पर किए जाने वाले कॉल से विज्ञापन एक्सटेंशन पर कोई असर नहीं पड़ेगा. इसके अलावा, एक चेतावनी मैसेज लॉग किया जाएगा. इस्तेमाल न किए जाने वाले तरीकों के बारे में जानने के लिए, नीचे दी गई टेबल देखें:

कक्षा काम न करने वाले तरीके
कॉलआउट कोई अमान्य तरीका नहीं है
MobileApp setSchedules
PhoneNumber clearEndDate
clearStartDatesetEndDate
setStartDate
कीमत clearEndDate
clearStartDatesetEndDate
setSchedules
setStartDate
साइटलिंक कोई अमान्य तरीका नहीं है
स्निपेट clearEndDate
clearStartDatesetEndDate
setSchedules
setStartDate

विज्ञापन एक्सटेंशन बनाना

विज्ञापन एक्सटेंशन बिल्डर के मौजूदा सेट (उदाहरण के लिए, SitelinkBuilder) में, फ़ीड-आधारित विज्ञापन एक्सटेंशन या ऐसेट-आधारित विज्ञापन एक्सटेंशन बनाए जा सकते हैं. डिफ़ॉल्ट रूप से, ये बिल्डर इस समय जिस भी तरह का विज्ञापन एक्सटेंशन दिखा रहे हैं, वह उसे बनाएगा. नीचे दी गई टेबल में, विज्ञापन एक्सटेंशन के टाइप के बारे में खास जानकारी दी गई है. फ़िलहाल, जो विज्ञापन एक्सटेंशन दिखाए जा रहे हैं वे डिफ़ॉल्ट रूप से बनाए जाएंगे:

खाते में विज्ञापन एक्सटेंशन का प्रकार
सिर्फ़ फ़ीड-आधारित विज्ञापन एक्सटेंशन फ़ीड-आधारित विज्ञापन एक्सटेंशन डिफ़ॉल्ट रूप से बनाए जाएंगे
सिर्फ़ ऐसेट पर आधारित विज्ञापन एक्सटेंशन एसेट पर आधारित विज्ञापन एक्सटेंशन, डिफ़ॉल्ट रूप से बनाए जाएंगे
फ़ीड और एसेट पर आधारित विज्ञापन एक्सटेंशन, दोनों पर आधारित विज्ञापन एक्सटेंशन एसेट पर आधारित विज्ञापन एक्सटेंशन, डिफ़ॉल्ट रूप से बनाए जाएंगे

किसी ग्राहक के एक्सटेंशन माइग्रेट होने के बाद, सभी विज्ञापन एक्सटेंशन बिल्डर डिफ़ॉल्ट रूप से ऐसेट पर आधारित विज्ञापन एक्सटेंशन बनाएंगे. फ़ीड-आधारित विज्ञापन एक्सटेंशन नहीं बनाए जा सकेंगे, क्योंकि फ़ीड-आधारित विज्ञापन एक्सटेंशन लंबे समय तक दिखाई नहीं देंगे.

अगर आपको डिफ़ॉल्ट व्यवहार पर भरोसा करने के बजाय, फ़ीड-आधारित एक्सटेंशन बनाना है, तो build() के बजाय build(true) को कॉल करके ऐसा किया जा सकता है. उदाहरण के लिए:

const phoneNumberBuilder = AdsApp.extensions().newPhoneNumberBuilder();
const newPhoneNumber = phoneNumberBuilder
  .withCountry("US")
  .withPhoneNumber("4085550000")
  .withCallOnly(false)
  // Calling build(true) means this will create a legacy phone number extension.
  .build(true)
  .getResult();

अगर आपको ऐसेट-आधारित एक्सटेंशन बनाना है और आपके खाते में फ़िलहाल सिर्फ़ फ़ीड-आधारित एक्सटेंशन हैं, तो 28 मार्च तक इंतज़ार करें या build(false) को कॉल करें.

const phoneNumberBuilder = AdsApp.extensions().newPhoneNumberBuilder();
const newPhoneNumber = phoneNumberBuilder
  .withCountry("US")
  .withPhoneNumber("4085550000")
  .withCallOnly(false)
  // Calling build(false) means this will create an asset-based phone number extension
  // even if the account currently only has feed-based extensions.
  .build(false)
  .getResult();

काम न करने वाले फ़ील्ड

विज्ञापन एक्सटेंशन माइग्रेशन के दौरान, कुछ फ़ील्ड बंद कर दिए गए हैं. उदाहरण के लिए, स्निपेट एक्सटेंशन से शुरू होने की तारीख और खत्म होने की तारीख को रोक दिया गया है. withEndDate या withStartDate पर किए जाने वाले कॉल से एक्सटेंशन पर कोई असर नहीं पड़ेगा—इसके बजाय, एक चेतावनी मैसेज लॉग किया जाएगा. हर क्लास के लिए अब कौनसे तरीके काम नहीं करते, यह समझने के लिए यहां दी गई टेबल देखें:

कक्षा काम न करने वाले तरीके
CalloutBuilder withMobilePreferred
MobileAppBuilder withMobilePreferred
withSchedules
PhoneNumberBuilder withEndDate
withMobilePreferred
withStartDate
PriceBuilder withEndDate
withMobilePreferred
withSchedules
withStartDate
SitelinkBuilder withMobilePreferred
SnippetBuilder withEndDate
withMobilePreferred
withSchedules
withStartDate