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

Giới thiệu


Điều quan trọng là phải cung cấp cho người bán khả năng thực hiện thay đổi đối với chiến dịch của họ sau khi chiến dịch được tạo. Sau đây là các khía cạnh quan trọng nhất mà chúng có thể thay đổi:

  • Ngân sách
  • Trạng thái (tạm dừng, đang bật, đang 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 trong 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 sẽ cho phép người bán sửa đổi các trường giống với các trường mà họ đã cung cấp trong quá trình tạo chiến dịch. Dưới đây là một ví dụ về giao diện này:

edit_pmax

Hướng dẫn kỹ thuật


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ác chế độ cài đặt sau đây của chiến dịch:

  • 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ể tìm thông tin tổng quan chi tiết về cách thay đổi tài nguyên trong Hướng dẫn cho nhà phát triển. Bạn có thể thay đổi một tài nguyên cụ thể bằng cách sử dụng điểm cuối dịch vụ được hiển thị để thay đổi tài nguyên đó (ví dụ: CampaignService.MutateCampaigns) hoặc thay đổi trên nhiều tài nguyên khác nhau bằng chức năng thay đổi hàng loạt có sẵn qua đ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 thao tác cần thực hiện để cập nhật một chiến dịch. Vì vậy, bạn nên thiết kế cấu trúc xoay quanh việc sử dụng điểm cuối GoogleAdsService.Mutate thay vì từng điểm cuối tài nguyên. Điều này cũng giúp bạn dễ dàng mở rộng chức năng hơn trong tương lai.

Các ví dụ sau này giả định rằng bạn đã lưu trữ các mã nhận dạng có liên quan trong cơ sở dữ liệu cục bộ của mình.

Tên chiến dịch

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

Mã này không được chứa bất kỳ ký tự 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

Có một phương pháp hay là cập nhật ngân sách hiện tại thay vì thay thế bằng 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à không dẫn đến 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 làm thay đổi bất kỳ trường nào khác, làm tăng giá trị của mức 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 trường Campaign.status và chỉ định trạng thái phù hợp từ enum CampaignStatus.

Bạn có thể tìm thấy ví dụ về cách thay đổi trạng thái chiến dịch trong mã mẫu cho mục 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í mà người dùng nhìn thấy, ở mức tối thiểu là Nhắm mục tiêu theo vị trí địa lý và có thể là cả tính năng Nhắm mục tiêu theo ngôn ngữ. Bạn có thể tìm thấy ví dụ về cách cập nhật tiêu chí chiến dịch trong mã mẫu để cập nhật hệ số sửa đổi giá thầu tiêu chí của 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 thành giá trị của hằng số mục tiêu theo đị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 cập nhật giá trị của 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