4.4 キャンペーン管理

はじめに


販売者がキャンペーンを変更できるようにすることが重要です。 作成されます。変更可能であるべき最も重要な側面 次のとおりです。

  • 予算
  • ステータス(一時停止、有効化、削除)
  • 地域ターゲティング(推奨、省略可)
  • キャンペーン作成インターフェースに含めたその他のフィールド
で確認できます。

UX ガイダンス


キャンペーン リストを概要ページと、 キャンペーンのパフォーマンスレポートを作成できますユーザーがキャンペーンを一時停止、削除、編集できるようにします。

pmax_campaign

キャンペーンを編集する場合は、販売者がキャンペーンを編集するのと同じ項目を変更できる必要があります。 キャンペーン作成時に 入力した情報が含まれますこれを使用して 下図のようになります。

edit_pmax

技術ガイダンス


小売向け P-MAX キャンペーンを作成したら、 次のキャンペーン設定です

  • キャンペーン名
  • キャンペーンの予算
  • キャンペーンのステータス
  • キャンペーンのターゲティング条件

リソースの変更方法の詳細な概要については、 デベロッパー ガイド公開されているサービスを使用して特定のリソースを変更できます そのリソースを変更できます(たとえば、 CampaignService.MutateCampaigns など)を使用するか、複数の異なるタイプにわたって変更します。 一括変更機能を使用できます。 GoogleAdsService.Mutate エンドポイント。

可能な場合は、一括で変更して、変更される件数を減らすことをおすすめします。 オペレーションを自動化します。このことを念頭に置いて GoogleAdsService.Mutate エンドポイントの使用に関するアーキテクチャ 構成できます。これにより 実装する予定です。

後の例では、関連する ID がすでにローカル データベースです

キャンペーン名

キャンペーン名を更新するには、Campaign.name を変更する必要があります 表示されます。

null(コードポイント 0x0)、NL ラインフィード(コードポイント 0xA)を含めることはできません 改行(コードポイント 0xD)文字を使用できます。

キャンペーンの予算

既存の予算を置き換えるのではなく、既存の予算を更新することをおすすめします。 新しい予算を設定しますこれにより、キャンペーンが想定どおりの費用を獲得し、 過剰配信は発生しません

更新する必要があるのは予算の値のみで、他のフィールドは変更しないでください。 1 日の支出の価値を高める

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 フィールドで指定し、 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