शॉपिंग कैंपेन

Google Ads के स्क्रिप्ट, शॉपिंग कैंपेन को मैनेज करने में आपकी मदद करते हैं. स्क्रिप्ट का इस्तेमाल करके, मौजूदा शॉपिंग कैंपेन के साथ काम किया जा सकता है. साथ ही, प्रॉडक्ट ग्रुप के क्रम-वार स्ट्रक्चर बनाए और मैनेज किए जा सकते हैं. इसके अलावा, शॉपिंग रिपोर्ट भी जनरेट की जा सकती हैं. हालांकि, स्क्रिप्ट का इस्तेमाल करके शॉपिंग कैंपेन नहीं बनाए जा सकते. साथ ही, कैंपेन लेवल पर शॉपिंग की प्रॉपर्टी सेट नहीं की जा सकतीं. जैसे, कैंपेन की प्राथमिकता, इन्वेंट्री फ़िल्टर वगैरह. इसके अलावा, Merchant Center खाते भी लिंक नहीं किए जा सकते.

शॉपिंग कैंपेन और विज्ञापन ग्रुप वापस पाना

`AdsApp` ऑब्जेक्ट के `shoppingCampaigns` कलेक्शन के ज़रिए, शॉपिंग कैंपेन उपलब्ध होते हैं. इन्हें स्क्रिप्ट की मदद से, आम तौर पर वापस पाया जा सकता है:

const campaignName = "My first shopping campaign";

const campaignIterator = AdsApp.shoppingCampaigns()
    .withCondition(`campaign.name = "${campaignName}"`)
    .get();

for (const campaign of campaignIterator) {
  ...
}

किसी कैंपेन को वापस पाने के बाद, उसके विज्ञापन ग्रुप को भी इसी तरह वापस पाया जा सकता है. ऐसा सिर्फ़ तब किया जाना चाहिए, जब आपको कैंपेन और उसके विज्ञापन ग्रुप, दोनों पर कार्रवाई करनी हो.

const adGroupIterator = campaign.adGroups()
    .withCondition(`ad_group.name = "${adGroupName}"`)
    .get();

for (const adGroup of adGroupIterator) {
    ...
}

अगर आपको सिर्फ़ कुछ विज्ञापन ग्रुप पर कार्रवाई करनी है, तो कैंपेन को वापस पाए बिना, विज्ञापन ग्रुप फ़ेच करने के लिए, AdsApp.shoppingAdGroups() तरीके का इस्तेमाल किया जा सकता है:

const adGroupIterator = AdsApp.shoppingAdGroups()
    .withCondition(`campaign.name = "${campaignName}"`)
    .withCondition(`ad_group.name = "${adGroupName}"`)
    .get();

for (const adGroup of adGroupIterator) {
    ...
}

प्रॉडक्ट के विज्ञापन

Google Ads के स्क्रिप्ट की मदद से, वापस पाए जा सकते हैं आपके प्रॉडक्ट विज्ञापन का इस्तेमाल करके ads() तरीका ShoppingAdGroup. आप नए प्रॉडक्ट विज्ञापन newAdBuilder() तरीके का इस्तेमाल करके ShoppingAdGroup बना सकते हैं.

प्रॉडक्ट ग्रुप के क्रम-वार स्ट्रक्चर को दोहराना

प्रॉडक्ट ग्रुप के क्रम-वार स्ट्रक्चर के रूट को ShoppingAdGroup के rootProductGroup तरीके का इस्तेमाल करके ऐक्सेस किया जा सकता है. इसके बाद, चाइल्ड प्रॉडक्ट ग्रुप को दोहराने और प्रॉडक्ट ग्रुप के क्रम-वार स्ट्रक्चर को ट्रैवर्स करने के लिए, children तरीके का इस्तेमाल किया जा सकता है. हर नोड एक ProductGroup ऑब्जेक्ट होता है. साथ ही, प्रॉडक्ट ग्रुप के असल टाइप का पता लगाने के लिए, getDimension तरीके का इस्तेमाल किया जा सकता है. इसके अलावा, इसे ज़्यादा खास टाइप में भी बदला जा सकता है. जैसे, ProductBrand इसके लिए, इससे जुड़ा कास्टिंग तरीका इस्तेमाल करें. जैसे, asBrand यहां दिए गए कोड स्निपेट में, प्रॉडक्ट ग्रुप के क्रम-वार स्ट्रक्चर को बार-बार ट्रैवर्स करने का तरीका बताया गया है.

walkTree(shoppingAdGroup.rootProductGroup(), 1);

function walkTree(root, level) {
  // Logger.log(root.getDimension());
  let description = "";
  switch (root.getDimension()) {
    case "ROOT":
      description = "Root";
      break;

    case "CATEGORY":
      description = root.asCategory().getName();
      break;

    case "BRAND":
      description = root.asBrand().getName();
      break;

    // Handle more types here.
    ...
  }

  if (root.isOtherCase()) {
    description = "Other";
  }

  const padding = new Array(level + 1).join('-');
  console.log("%s, %s, %s, %s, %s, %s",
             padding,
             description,
             root.getDimension(),
             root.getMaxCpc(),
             root.isOtherCase(),
             root.getId().toFixed());
  const children = root.children().get();
  for (const child of children) {
    walkTree(child, level + 1);
  }
}

कोई खास प्रॉडक्ट ग्रुप चुनना

प्रॉडक्ट ग्रुप के क्रम-वार स्ट्रक्चर में खास प्रॉडक्ट ग्रुप चुने जा सकते हैं. इसके लिए, AdsApp, ShoppingCampaign या ShoppingAdGroup इंस्टेंस के productGroups तरीके का इस्तेमाल करें. बिड मैनेजमेंट के मकसद से, खास प्रॉडक्ट ग्रुप चुनते समय, प्रॉडक्ट ग्रुप के पूरे क्रम-वार स्ट्रक्चर को ट्रैवर्स करने के बजाय, यह तरीका इस्तेमाल करना ज़्यादा आसान होता है. यहां दिए गए कोड स्निपेट में, पिछले महीने पांच से ज़्यादा क्लिक और 0.01 से ज़्यादा क्लिक मिलने की दर वाले सभी प्रॉडक्ट ग्रुप चुनने का तरीका बताया गया है. साथ ही, इनकी बिड को 0.01 से बढ़ाया गया है.

function main() {
  const productGroups = AdsApp.productGroups()
      .withCondition("metrics.clicks > 5")
      .withCondition("metrics.ctr > 0.01")
      .forDateRange("LAST_MONTH")
      .get();
  for (const productGroup of productGroups) {
    productGroup.setMaxCpc(productGroup.getMaxCpc() + 0.01);
  }
}

प्रॉडक्ट ग्रुप के क्रम-वार स्ट्रक्चर को अपडेट करना

किसी मौजूदा प्रॉडक्ट ग्रुप में चाइल्ड प्रॉडक्ट ग्रुप जोड़ने के लिए, उसके newChild तरीके का इस्तेमाल किया जा सकता है. इससे आपको ProductGroupBuilderSpace ऑब्जेक्ट मिलता है. इसका इस्तेमाल करके, सही प्रॉडक्ट ग्रुप बनाया जा सकता है. यहां दिए गए कोड स्निपेट में, रूट के तहत "cardcow" ब्रैंड के लिए सबडिविज़न जोड़ने का तरीका बताया गया है. इसके बाद, नए और रीफ़र्बिश्ड प्रॉडक्ट के लिए, इसे और सबडिवाइड किया गया है.

const root = shoppingAdGroup.rootProductGroup();

// Add a brand product group for a "cardcow" under root.
const brandProductGroup = root.newChild()
    .brandBuilder()
    .withName("cardcow")
    .withBid(1.2)
    .build()
    .getResult();

// Add new conditions for New and Refurbished cardcow brand items.
const newItems = brandProductGroup.newChild()
    .conditionBuilder()
    .withCondition("New")
    .withBid(1.5)
    .build()
    .getResult();

// Refurbished items will use the bid from "cardcow" product group.
const refurbishedItems = brandProductGroup.newChild()
    .conditionBuilder()
    .withCondition("Refurbished")
    .build()
    .getResult();

इसी तरह, remove तरीके का इस्तेमाल करके, सबडिविज़न हटाया जा सकता है ProductGroup. इससे, हटाए जा रहे प्रॉडक्ट ग्रुप के तहत मौजूद, प्रॉडक्ट ग्रुप का पूरा क्रम-वार स्ट्रक्चर भी मिट जाता है.

स्क्रिप्ट यह पक्का करेंगी कि हर प्रॉडक्ट ग्रुप बनाने के बाद, प्रॉडक्ट ग्रुप का क्रम-वार स्ट्रक्चर एक जैसा रहे. इसलिए, प्रॉडक्ट ग्रुप के क्रम-वार स्ट्रक्चर को अपडेट करते समय, "अन्य सभी" से जुड़े प्रॉडक्ट ग्रुप को बनाने या मिटाने की ज़रूरत नहीं होती.

"अन्य सभी" प्रॉडक्ट ग्रुप

शॉपिंग प्रॉडक्ट ग्रुप के क्रम-वार स्ट्रक्चर में, हर लेवल पर "अन्य सभी" ("अन्य") प्रॉडक्ट ग्रुप शामिल होता है. इसका इस्तेमाल, उन प्रॉडक्ट को मैनेज करने के लिए किया जाता है जो प्रॉडक्ट ग्रुप के क्रम-वार स्ट्रक्चर में बनाई गई, आपकी पसंद के मुताबिक शर्तों से मेल नहीं खाते. आपके जोड़े गए सामान्य प्रॉडक्ट ग्रुप और "अन्य" प्रॉडक्ट ग्रुप के बीच अंतर करने के लिए, isOtherCase तरीके का इस्तेमाल किया जा सकता है.

यहां दिए गए कोड स्निपेट में, रूट प्रॉडक्ट ग्रुप के क्रम-वार स्ट्रक्चर के तहत मौजूद "अन्य" प्रॉडक्ट ग्रुप को वापस पाने और उसकी बिड को प्रिंट करने का तरीका बताया गया है.

const root = shoppingAdGroup.rootProductGroup();

const childProductGroups = root.children().get();
let everythingElseProductGroupFound = false;

for (const childProductGroup of childProductGroups) {
  if (childProductGroup.isOtherCase()) {
    console.log("'Everything else' product group found. Type of the " +
               "product group is %s and bid is %s.",
               childProductGroup.getDimension(),
               childProductGroup.getMaxCpc());
    everythingElseProductGroupFound = true;
    break;
  }
}
if (!everythingElseProductGroupFound) {
  console.log("No 'Everything else' product group found under root " +
             "product group.");
}

जब किसी लीफ़ प्रॉडक्ट ग्रुप को सबडिवाइड किया जाता है, तो स्क्रिप्ट अपने-आप "अन्य" प्रॉडक्ट ग्रुप बना देती हैं. इससे यह पक्का होता है कि प्रॉडक्ट ग्रुप का क्रम-वार स्ट्रक्चर मान्य बना रहे. "अन्य" प्रॉडक्ट ग्रुप को पैरंट प्रॉडक्ट ग्रुप की बिड मिलती है.

नया शॉपिंग विज्ञापन ग्रुप बनाना

Google Ads स्क्रिप्ट की मदद से, ShoppingCampaign के newAdGroupBuilder तरीके का इस्तेमाल करके, नया शॉपिंग विज्ञापन ग्रुप बनाया जा सकता है. ShoppingAdGroup बनाने के बाद, नया प्रॉडक्ट ग्रुप का क्रम-वार स्ट्रक्चर बनाने के लिए, उसके createRootProductGroup तरीके का इस्तेमाल किया जा सकता है.

रिपोर्ट

Google Ads के स्क्रिप्ट, product_group_view और shopping_performance_view रिपोर्ट जनरेट करने की सुविधा देते हैं. इससे आपको अपने शॉपिंग कैंपेन की परफ़ॉर्मेंस ट्रैक करने में मदद मिलती है. रिपोर्टिंग के बारे में ज़्यादा जानने के लिए, हमारी रिपोर्ट से जुड़ी गाइड पढ़ें.