4.4 Kampanya Yönetimi

Giriş


Satıcıların, kampanyaları oluşturulduktan sonra bu kampanyalarda değişiklik yapabilmesini sağlamak önemlidir. Değiştirebilecekleri en kritik noktalar şunlardır:

  • Bütçe
  • Durum (duraklatma, etkinleştirme, kaldırma)
  • Coğrafi hedefleme (önerilir ancak isteğe bağlıdır)
  • Kampanya oluşturma arayüzüne eklediğiniz diğer tüm alanlar

Kullanıcı Deneyimi Rehberliği


Genel bakış sayfasında ve kampanya performansı raporlamasının parçası olarak ayrı bir sayfada kampanyalar listesini gösterin. Kullanıcıların kampanyaları duraklatmasına, silmesine ve düzenlemesine izin verin.

pmax_campaign

Bir kampanyanın düzenlenmesi, satıcının kampanya oluştururken sağladığı alanları değiştirmesine izin vermelidir. Bunun nasıl görünebileceğine dair bir örnek aşağıda verilmiştir:

edit_pmax

Teknik Rehberlik


Perakende için Maksimum Performans kampanyası oluşturduktan sonra aşağıdaki kampanya ayarlarını değiştirebilirsiniz:

  • Kampanya adı
  • Kampanya bütçesi
  • Kampanya durumu
  • Kampanya hedefleme ölçütleri

Geliştirici Kılavuzu'nda kaynakların nasıl dönüştürüleceğine ilişkin ayrıntılı bir genel bakış bulabilirsiniz. Bir kaynağı değiştirmek için açığa çıkan hizmet uç noktasını kullanarak belirli bir kaynağı (ör. CampaignService.MutateCampaigns) veya GoogleAdsService.Mutate uç noktası aracılığıyla kullanılabilen toplu dönüştürme işlevini kullanarak birden çok farklı kaynakta değişiklik yapabilirsiniz.

Bir kampanyayı güncellemek için gereken işlem sayısını azaltmak amacıyla mümkün olduğunda toplu olarak dönüştürmeyi öneririz. Bunu göz önünde bulundurarak mimarinizi, bağımsız kaynak uç noktaları yerine GoogleAdsService.Mutate uç noktasını kullanacak şekilde tasarlamanız gerekir. Bu ayrıca gelecekte işlevlerin kolayca genişletilmesine de olanak tanır.

Sonraki örneklerde, ilgili kimliklerin yerel veritabanınızda zaten depolanmış olduğu varsayılmaktadır.

Kampanya adı

Bir kampanyanın adını güncellemek için Campaign.name alanını değiştirmeniz gerekir.

Boş (kod noktası 0x0), NL satır feed'i (kod noktası 0xA) veya satır başı (kod noktası 0xD) karakterleri içermemelidir.

Kampanya bütçesi

Yeni bir bütçeyle değiştirmek yerine mevcut bir bütçeyi güncellemek en iyi uygulama olarak kabul edilir. Bu, kampanyanızın beklendiği gibi harcama yapmasını ve fazla yayına yol açmamasını sağlar.

Yalnızca bütçenin değerini güncellemeniz ve diğer alanları değiştirmemeniz gerekir. Bu, GÜNLÜK harcamanın değerini artırır.

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

Kampanya durumu

Bir kampanyanın durumunu güncellemek (etkinleştirme/duraklatma/kaldırma) için Campaign.status alanını değiştirmeniz ve CampaignStatus sıralamasından ilgili durumu atamanız gerekir.

Kampanyayı güncelleme için örnek kodda kampanya durumunun değiştirilmesine ilişkin bir örnek bulabilirsiniz.

Kampanya ölçütleri

Kampanya ölçütlerini güncellerken yalnızca kullanıcıya gösterilen ölçütleri güncelleme özelliğini sağlamanız gerekir. Bu, minimum Coğrafi hedefleme ve potansiyel olarak Dil hedeflemedir. Kampanya ölçütü teklif değiştiricisini güncelleme kodunda, bir kampanya ölçütünü güncellemeyle ilgili bir örnek bulabilirsiniz.

Coğrafi hedefleme ölçütlerini güncellemek için CampaignCriterion.location değerini yeni coğrafi hedef sabitinin değerine güncellersiniz.

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

Dil hedefleme ölçütlerini güncellemek için CampaignCriterion.language değerinin değerini yeni dil sabitiyle güncellemeniz gerekir.

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