4.4 Quản lý chiến dịch

Giới thiệu


Điều quan trọng là bạn phải cho phép người bán chỉnh sửa chiến dịch của họ sau khi tạo. Những khía cạnh quan trọng nhất mà trẻ cần thay đổi như sau:

  • Ngân sách
  • Trạng thái (đang tạm dừng, đang bật, xoá)
  • Nhắm mục tiêu theo địa lý (nên dùng nhưng không bắt buộc)
  • Bất kỳ trường nào khác mà bạn đã đưa vào giao diện tạo chiến dịch

Hướng dẫn về trải nghiệm người dùng


Hiển thị danh sách chiến dịch trên trang tổng quan và trên một trang riêng biệt như một phần của báo cáo hiệu suất chiến dịch. Cho phép người dùng tạm dừng, xoá và chỉnh sửa chiến dịch.

pmax_campaign

Việc chỉnh sửa chiến dịch phải cho phép người bán sửa đổi các trường giống như họ cung cấp thông tin đầu vào trong quá trình tạo chiến dịch. Ví dụ về cách điều này có thể giao diện được hiển thị dưới đây:

edit_pmax

Hướng dẫn về công nghệ


Sau khi tạo chiến dịch Tối đa hoá hiệu suất cho hoạt động bán lẻ, bạn có thể thay đổi cài đặt chiến dịch sau:

  • Tên chiến dịch
  • Ngân sách chiến dịch
  • Trạng thái chiến dịch
  • Tiêu chí nhắm mục tiêu chiến dịch

Bạn có thể xem thông tin tổng quan chi tiết về cách thay đổi tài nguyên trong Hướng dẫn dành cho nhà phát triển. Bạn có thể thay đổi một tài nguyên cụ thể bằng dịch vụ được hiển thị điểm cuối để thay đổi tài nguyên đó (ví dụ: CampaignService.MutateCampaigns) hoặc thay đổi trên nhiều bằng cách sử dụng chức năng thay đổi hàng loạt có sẵn bằng cách sử dụng điểm cuối GoogleAdsService.Mutate.

Nếu có thể, bạn nên thay đổi hàng loạt để giảm số lượng các thao tác cần thực hiện để cập nhật chiến dịch. Theo đó, bạn nên thiết kế cấu trúc của bạn xoay quanh việc sử dụng điểm cuối GoogleAdsService.Mutate của từng điểm cuối tài nguyên. Điều này cũng cho phép dễ dàng mở rộng trong tương lai.

Các ví dụ sau giả định rằng bạn có các id có liên quan đã được lưu trữ trong cơ sở dữ liệu.

Tên chiến dịch

Để cập nhật tên của một chiến dịch, bạn cần thay đổi Campaign.name .

Giá trị này không được chứa giá trị rỗng (điểm mã 0x0), nguồn cấp dữ liệu dòng NL (điểm mã 0xA) hoặc ký tự trả lại vị trí đầu dòng (điểm mã 0xD).

Ngân sách chiến dịch

Đây được xem là phương pháp hay nhất để cập nhật ngân sách hiện tại thay vì thay thế với ngân sách mới. Điều này đảm bảo rằng chiến dịch của bạn chi tiêu như dự kiến và sẽ không dẫn đến việc phân phối quá mức.

Bạn chỉ nên cập nhật giá trị ngân sách và không thay đổi bất kỳ trường nào khác, tăng giá trị khoản chi tiêu HẰNG NGÀY.

Python
budget_resource_name = client.get_service(
        "CampaignBudgetService"
    ).campaign_budget_path(customer_id, budget_id)

mutate_operation = client.get_type("MutateOperation")
campaign_budget = mutate_operation.campaign_budget_operation.update

campaign_budget.resource_name = budget_resource_name

# update the budget amount to the new value

campaign_budget.amount_micros = 50000000

client.copy_from(
    mutate_operation.campaign_budget_operation.update_mask,
    protobuf_helpers.field_mask(None, campaign_budget._pb),
)
return mutate_operation

Trạng thái chiến dịch

Để cập nhật trạng thái (bật/tạm dừng/xoá) của một chiến dịch, bạn cần thay đổi Campaign.status và chỉ định trạng thái liên quan từ Enum CampaignStatus.

Bạn có thể tìm thấy ví dụ về việc thay đổi trạng thái chiến dịch trong mã mẫu cho cập nhật chiến dịch.

Tiêu chí chiến dịch

Khi cập nhật tiêu chí chiến dịch, bạn chỉ cần cung cấp khả năng cập nhật tiêu chí được hiển thị cho người dùng, điều này ở mức tối thiểu là nhắm mục tiêu theo địa lý và có thể nhắm mục tiêu theo Ngôn ngữ. Bạn có thể xem ví dụ về cách cập nhật một tiêu chí chiến dịch trong mã mẫu cho cập nhật hệ số sửa đổi giá thầu tiêu chí chiến dịch.

Để cập nhật tiêu chí nhắm mục tiêu theo địa lý, bạn cập nhật CampaignCriterion.location vào giá trị của hằng số mục tiêu địa lý mới.

Python
criterion_rname = client.get_service(
    "CampaignCriterionService"
    ).campaign_criterion_path(
    customer_id, campaign_id, criterion_id
)

mutate_operation = client.get_type("MutateOperation")
campaign_criterion = mutate_operation.campaign_criterion_operation.update

campaign_criterion.resource_name = criterion_rname

# Set the geo to the update geo targeting

campaign_criterion.location.geo_target_constant = (
   geo_target_constant_service.geo_target_constant_path("1022762")
) # Brooklyn

client.copy_from(
    mutate_operation.campaign_criterion_operation.update_mask,
    protobuf_helpers.field_mask(None, campaign_criterion._pb),
)
return mutate_operation

Để cập nhật tiêu chí nhắm mục tiêu theo ngôn ngữ, bạn cần phải cập nhật giá trị của thuộc tính Giá trị CampaignCriterion.language bằng hằng số ngôn ngữ mới.

Python
campaign_criterion_service = client.get_service("CampaignCriterionService")

criterion_rname = campaign_criterion_service.campaign_criterion_path(
   customer_id, campaign_id, criterion_id
)

mutate_operation = client.get_type("MutateOperation")
campaign_criterion = mutate_operation.campaign_criterion_operation.update

campaign_criterion.resource_name = criterion_rname

# Set the language to the updated language
# For a list of all language codes, see:
# https://developers.google.com/google-ads/api/data/codes-formats#languages
campaign_criterion.language.language_constant = (
    googleads_service.language_constant_path("1000")
)  # English

client.copy_from(
    mutate_operation.campaign_criterion_operation.update_mask,
    protobuf_helpers.field_mask(None, campaign_criterion._pb),
)
return mutate_operation