4.4 การจัดการแคมเปญ
เกริ่นนำ
คุณต้องทำให้ผู้ขายสามารถทำการเปลี่ยนแปลงในแคมเปญ หลังจากที่สร้างขึ้นแล้วได้ ส่วนที่สำคัญที่สุดที่ทีมควรเปลี่ยนได้มีดังนี้
- งบประมาณ
- สถานะ (หยุดชั่วคราว เปิดใช้ นำออก)
- การกำหนดเป้าหมายตามภูมิศาสตร์ (แนะนำแต่ไม่บังคับ)
- ช่องอื่นๆ ที่คุณรวมไว้ในอินเทอร์เฟซการสร้างแคมเปญ
คำแนะนำ UX
แสดงรายการแคมเปญในหน้าภาพรวมและหน้าแยกต่างหากเป็นส่วนหนึ่งของการรายงานประสิทธิภาพของแคมเปญ ให้ผู้ใช้หยุดชั่วคราว ลบ และแก้ไขแคมเปญ
การแก้ไขแคมเปญควรช่วยให้ผู้ขายแก้ไขช่องเดียวกันกับที่กรอกไว้ระหว่างการสร้างแคมเปญได้ ตัวอย่างลักษณะที่ปรากฏได้มีดังนี้
คำแนะนำทางเทคนิค
เมื่อสร้างแคมเปญ Performance Max สำหรับธุรกิจค้าปลีกแล้ว คุณจะเปลี่ยนการตั้งค่าแคมเปญต่อไปนี้ได้
- ชื่อแคมเปญ
- งบประมาณแคมเปญ
- Campaign status
- เกณฑ์การกำหนดเป้าหมายแคมเปญ
ดูภาพรวมโดยละเอียดเกี่ยวกับวิธีเปลี่ยนแปลงทรัพยากรในคู่มือนักพัฒนาซอฟต์แวร์ คุณเปลี่ยนทรัพยากรที่เฉพาะเจาะจงได้โดยใช้ปลายทางของบริการที่เปิดเผยเพื่อกลายทรัพยากรนั้น (เช่น CampaignService.MutateCampaigns
) หรือเปลี่ยนแปลงทรัพยากรต่างๆ โดยใช้ฟังก์ชันการเปลี่ยนแปลงแบบกลุ่มที่มีอยู่โดยใช้ปลายทาง GoogleAdsService.Mutate
หากทำได้ เราขอแนะนำให้เปลี่ยนรูปแบบจำนวนมากเพื่อลดจำนวนการดำเนินการที่จำเป็นในการอัปเดตแคมเปญ คุณจึงควรออกแบบสถาปัตยกรรมโดยใช้ปลายทาง GoogleAdsService.Mutate
แทนปลายทางทรัพยากรแต่ละรายการ สิ่งนี้ยังช่วยให้ส่วนขยาย
ฟังก์ชันต่างๆ ง่ายขึ้นในอนาคต
ในตัวอย่างถัดๆ ไป เราจะถือว่าคุณมีรหัสที่เกี่ยวข้องซึ่งจัดเก็บอยู่ในฐานข้อมูลท้องถิ่นแล้ว
ชื่อแคมเปญ
หากต้องการอัปเดตชื่อแคมเปญ คุณจะต้องเปลี่ยนแปลงช่อง Campaign.name
โดยต้องไม่มีอักขระ Null (จุดโค้ด 0x0
), ฟีดบรรทัด NL (จุดโค้ด 0xA
)
หรืออักขระขึ้นบรรทัดใหม่ (จุดโค้ด 0xD
)
งบประมาณแคมเปญ
การดำเนินการนี้ถือเป็นแนวทางปฏิบัติแนะนำในการอัปเดตงบประมาณที่มีอยู่แทนที่จะแทนที่ด้วยงบประมาณใหม่ วิธีนี้ช่วยให้มั่นใจได้ว่าแคมเปญจะใช้จ่ายตามที่คาดไว้ และไม่ทำให้เกิดการแสดงโฆษณามากเกินไป
คุณควรอัปเดตค่าของงบประมาณเท่านั้นและไม่เปลี่ยนแปลงช่องอื่นๆ ซึ่งจะทำให้มูลค่าของการใช้จ่ายรายวันเพิ่มขึ้น
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
Campaign status
หากต้องการอัปเดตสถานะ (เปิดใช้/หยุดชั่วคราว/นำออก) ของแคมเปญ คุณต้องเปลี่ยนแปลงช่อง Campaign.status
และกำหนดสถานะที่เกี่ยวข้องจาก enum CampaignStatus
ดูตัวอย่างการเปลี่ยนแปลงสถานะแคมเปญได้ในโค้ดตัวอย่างสำหรับอัปเดตแคมเปญ
เกณฑ์แคมเปญ
เมื่อคุณอัปเดตเกณฑ์แคมเปญ คุณเพียงแค่ต้องทำให้การอัปเดตเกณฑ์ที่แสดงต่อผู้ใช้ ต้องมีการกำหนดเป้าหมายตามภูมิศาสตร์และการกำหนดเป้าหมายภาษาเป็นอย่างน้อย ดูตัวอย่างการอัปเดตเกณฑ์ของแคมเปญได้ในโค้ดตัวอย่างสำหรับอัปเดตตัวปรับราคาเสนอสำหรับเกณฑ์ของแคมเปญ
หากต้องการอัปเดตเกณฑ์การกำหนดเป้าหมายตามภูมิศาสตร์ คุณต้องอัปเดต CampaignCriterion.location
เป็นค่าคงที่ของเป้าหมายตามภูมิศาสตร์ใหม่
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
หากต้องการอัปเดตเกณฑ์การกำหนดภาษาเป้าหมาย คุณต้องอัปเดตค่าของค่า CampaignCriterion.language
เป็นค่าคงที่ของภาษาใหม่
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