کمپین های خرید

اسکریپت‌های Google Ads تا حدودی مدیریت کمپین‌های خرید شما را فراهم می‌کنند. می توانید از اسکریپت ها برای کار با کمپین های خرید موجود، ایجاد و مدیریت سلسله مراتب گروه های محصول و اجرای گزارش های خرید استفاده کنید. با این حال، نمی‌توانید از اسکریپت‌ها برای ایجاد کمپین‌های خرید، تنظیم ویژگی‌های خرید در سطح کمپین (به عنوان مثال: اولویت کمپین، فیلترهای موجودی، و غیره) یا پیوند دادن حساب‌های Merchant Center استفاده کنید.

بازیابی کمپین های خرید و گروه های تبلیغاتی

کمپین های خرید از طریق مجموعه shoppingCampaigns یک شی AdsApp در دسترس هستند. می توانید آنها را طبق معمول از طریق اسکریپت ها بازیابی کنید:

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 تبلیغات محصول جدید ایجاد کنید .

از طریق سلسله مراتب گروه محصول تکرار کنید

می توانید با استفاده از روش rootProductGroup ShoppingAdGroup به ریشه سلسله مراتب گروه محصول دسترسی پیدا کنید. سپس می‌توانید از روش 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);
  }
}

یک گروه محصول خاص را انتخاب کنید

می‌توانید گروه‌های محصول خاصی را در سلسله مراتب گروه محصول با روش productGroups یک نمونه AdsApp ، ShoppingCampaign یا ShoppingAdGroup انتخاب کنید. این رویکرد ساده تر از عبور از کل سلسله مراتب گروه محصول هنگام انتخاب گروه های محصول خاص برای اهداف مدیریت پیشنهاد است. قطعه کد زیر نحوه انتخاب همه گروه‌های محصول با بیش از پنج کلیک و نرخ کلیک بیشتر از 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 به شما امکان می‌دهد با استفاده از روش newAdGroupBuilder در ShoppingCampaign یک گروه آگهی خرید جدید ایجاد کنید. هنگامی که ShoppingAdGroup را ایجاد کردید، می توانید از روش createRootProductGroup آن برای ایجاد یک سلسله مراتب گروه محصول جدید استفاده کنید.

گزارش ها

اسکریپت‌های Google Ads از گزارش‌های product_group_view و shopping_performance_view پشتیبانی می‌کند تا به شما کمک کند عملکرد کمپین‌های خرید خود را پیگیری کنید. می‌توانید در راهنمای گزارش‌های ما درباره گزارش‌دهی اطلاعات بیشتری کسب کنید.