Chiến dịch Mua sắm

Tập lệnh Google Ads cung cấp một số hoạt động quản lý chiến dịch Mua sắm chiến dịch. Bạn có thể sử dụng các tập lệnh để hoạt động với các chiến dịch mua sắm hiện có, tạo và quản lý sản phẩm hệ thống phân cấp nhóm và chạy báo cáo mua sắm. Tuy nhiên, bạn không thể dùng tập lệnh để tạo chiến dịch mua sắm, đặt tài sản mua sắm ở cấp chiến dịch (cho ví dụ: mức độ ưu tiên của chiến dịch, bộ lọc khoảng không quảng cáo, v.v.) hoặc liên kết Merchant Center tài khoản.

Truy xuất chiến dịch và nhóm quảng cáo mua sắm

Chiến dịch Mua sắm có sẵn thông qua shoppingCampaigns bộ sưu tập của một AdsApp. Bạn có thể truy xuất chúng như bình thường thông qua tập lệnh:

const campaignName = "My first shopping campaign";

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

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

Khi đã truy lục chiến dịch, bạn có thể xem các nhóm quảng cáo của chiến dịch theo cách theo cách riêng. Cách này chỉ thích hợp hơn nếu bạn cần thực hiện hành động trên cả chiến dịch và chiến dịch nhóm quảng cáo.

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

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

Nếu dự định chỉ hành động trên các nhóm quảng cáo cụ thể, bạn có thể sử dụng Phương thức AdsApp.shoppingAdGroups() để tìm nạp nhóm quảng cáo mà không cần tìm nạp chiến dịch đầu tiên:

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

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

Quảng cáo sản phẩm

Tập lệnh Google Ads cho phép bạn truy xuất quảng cáo sản phẩm của bạn bằng cách sử dụng thời gian ads() của ShoppingAdGroup. Bạn có thể tạo quảng cáo sản phẩm mới bằng cách sử dụng newAdBuilder() phương thức của ShoppingAdGroup.

Lặp lại thông qua hệ phân cấp nhóm sản phẩm

Bạn có thể truy cập vào thư mục gốc của hệ phân cấp nhóm sản phẩm bằng cách sử dụng rootProductGroup của ShoppingAdGroup. Sau đó, bạn có thể sử dụng children để lặp lại các nhóm sản phẩm phụ và truyền tải nhóm sản phẩm thứ bậc. Mỗi nút là một ProductGroup và bạn có thể sử dụng getDimension để xác định loại thực tế của nhóm sản phẩm. Bạn cũng có thể truyền thành một loại cụ thể hơn (ví dụ: ProductBrand) bằng cách dùng phương thức truyền tương ứng (ví dụ: asBrand). Đoạn mã sau đây cho biết cách di chuyển đệ quy nhóm sản phẩm thứ bậc.

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);
  }
}

Chọn một nhóm sản phẩm cụ thể

Bạn có thể chọn các nhóm sản phẩm cụ thể trong hệ thống phân cấp nhóm sản phẩm có Phương thức productGroups của một AdsApp, ShoppingCampaign, hoặc ShoppingAdGroup thực thể. Phương pháp này đơn giản hơn so với việc truyền tải toàn bộ nhóm sản phẩm thứ bậc khi chọn các nhóm sản phẩm cụ thể để quản lý giá thầu . Đoạn mã sau đây cho biết cách chọn tất cả các nhóm sản phẩm có hơn 5 lượt nhấp và tỷ lệ nhấp cao hơn 0.01 trong thời gian tháng trước và tăng giá thầu của họ lên 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);
  }
}

Cập nhật hệ thống phân cấp nhóm sản phẩm

Bạn có thể thêm nhóm sản phẩm phụ vào nhóm sản phẩm hiện có bằng cách sử dụng newChild . Điều này mang lại cho bạn ProductGroupBuilderSpace mà sau đó bạn có thể sử dụng để tạo nhóm sản phẩm thích hợp. Chiến lược phát hành đĩa đơn đoạn mã sau đây thêm một phân mục cho "cardcow" thương hiệu gốc, rồi chia nhỏ tiếp cho các sản phẩm mới và đã được tân trang.

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();

Tương tự, bạn có thể xoá phân mục bằng cách sử dụng thuộc tính remove phương thức của ProductGroup. Thao tác này cũng sẽ xóa toàn bộ thứ bậc nhóm sản phẩm bên dưới sản phẩm nhóm bị xóa.

Tập lệnh sẽ đảm bảo rằng hệ phân cấp nhóm sản phẩm có trạng thái nhất quán sau khi tạo từng nhóm sản phẩm, nên bạn không cần phải tạo hoặc xoá nhóm sản phẩm tương ứng với "Mọi thứ khác" khi cập nhật sản phẩm cấu trúc hệ phân cấp nhóm.

Cụm từ "Mọi thứ khác" nhóm sản phẩm

Hệ phân cấp nhóm sản phẩm Mua sắm chứa "Mọi thứ khác" ("Khác") nhóm sản phẩm ở mỗi cấp để xử lý những sản phẩm không khớp với điều kiện tùy chỉnh mà bạn đã tạo trong phân cấp nhóm sản phẩm. Bạn có thể sử dụng isOtherCase để phân biệt giữa nhóm sản phẩm thông thường mà bạn đã thêm và "Khác" nhóm sản phẩm.

Đoạn mã sau đây truy xuất "Khác" nhóm sản phẩm trong mục gốc phân cấp nhóm sản phẩm và in giá thầu của phân cấp nhóm sản phẩm đó.

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.");
}

Khi bạn chia nhỏ một nhóm sản phẩm là lá, các tập lệnh sẽ tự động tạo "Khác" nhóm sản phẩm để đảm bảo rằng hệ thống phân cấp nhóm sản phẩm vẫn được hợp lệ. Nhóm "Khác" nhóm sản phẩm kế thừa giá thầu của sản phẩm gốc nhóm.

Tạo nhóm quảng cáo mua sắm mới

Tập lệnh Google Ads cho phép bạn tạo nhóm quảng cáo mua sắm mới bằng cách sử dụng newAdGroupBuilder phương thức của ShoppingCampaign. Sau khi tạo ShoppingAdGroup! bạn có thể sử dụng createRootProductGroup để tạo thứ bậc nhóm sản phẩm mới.

Báo cáo

Tập lệnh Google Ads được hỗ trợ product_group_viewshopping_performance_view để giúp bạn theo dõi hiệu suất của chiến dịch mua sắm. Bạn có thể Bạn có thể tìm hiểu thêm về cách báo cáo trong hướng dẫn về báo cáo.