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.
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:
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