導入購物廣告的第一步,是建立購物廣告活動。 購物廣告活動可讓使用者看到含有產品圖片的廣告,包括名稱、價格、商店名稱等等。建立購物廣告活動時,需要設定預算、出價策略和購物設定。
您必須先將 Google Ads 帳戶連結至 Google Merchant Center 帳戶,才能建立購物廣告活動。連結完成後,您就能在指定購物設定時使用 Google Merchant Center 帳戶 ID。
標準購物廣告活動
這是製作產品購物廣告所需的廣告活動。產品購物廣告可讓您在廣告中加入圖片、名稱、價格和商店或商家名稱,這樣您就不用為所銷售的每項產品分別製作專屬廣告。
設定標準購物廣告活動的步驟如下:
- 將廣告活動的
advertising_channel_type
設為SHOPPING
。 - 建立
ShoppingSetting
、設定欄位,然後將其新增至廣告活動。 - 建立組合出價策略或設定廣告活動層級出價策略。
- 建立新的廣告活動預算,或設定現有的共用預算。
針對標準購物廣告活動,ShoppingSetting
支援下列欄位:
需要
merchant_id
- 要宣傳的產品所屬帳戶的 Merchant Center ID。
campaign_priority
- 購物廣告活動的優先順序。優先順序數值較高的廣告活動會優先於優先順序較低的廣告活動。允許的值介於 0 到 2 (含) 之間。
選用
feed_label
Merchant Center 中定義的動態饋給標籤字串。當您需要選取特定 Merchant Center 動態饋給中的產品時,應使用這個欄位。如未指定,廣告活動就會使用 Merchant Center 中所有可用的動態饋給。
如果您先前以雙字母國家/地區代碼 (
XX
) 格式使用已淘汰的sales_country
,請改用feed_label
。詳情請參閱動態饋給標籤支援文章。請注意,在
feed_label
中提交國家/地區代碼,廣告並無法自動在該國家/地區放送,您必須先設定指定地理區域。enable_local
這個選項可以為這個廣告活動啟用本地商店所銷售產品的廣告。
出價策略可以設定為:
- 組合出價策略
- 一種自動出價策略,可在廣告活動、廣告群組和關鍵字之間共用。使用
BiddingStrategyService
建立。 - 廣告活動出價策略
- 直接為廣告活動設定的出價策略。包括與購物廣告活動相容的自動出價策略。
標準購物廣告活動支援下列出價策略:
組合出價策略
廣告活動出價策略
聯播網設定
自 2022 年 2 月 28 日當週起,標準購物廣告活動不再支援 network_settings.target_content_network
欄位。
在修改要求中將標準購物廣告活動的這個欄位設為 true
會產生 CANNOT_TARGET_CONTENT_NETWORK
錯誤。
詳情請參閱 Google Ads 標準購物廣告活動的「網路設定」異動。
以下程式碼範例說明如何建立標準購物廣告活動。
Java
private String addStandardShoppingCampaign( GoogleAdsClient googleAdsClient, long customerId, String budgetResourceName, long merchantCenterAccountId) { // Configures the shopping settings. ShoppingSetting shoppingSetting = ShoppingSetting.newBuilder() // Sets the priority of the campaign. Higher numbers take priority over lower numbers. // For Shopping product ad campaigns, allowed values are between 0 and 2, inclusive. .setCampaignPriority(0) .setMerchantId(merchantCenterAccountId) // Enables local inventory ads for this campaign. .setEnableLocal(true) .build(); // Create the standard shopping campaign. Campaign campaign = Campaign.newBuilder() .setName("Interplanetary Cruise #" + getPrintableDateTime()) // Configures settings related to shopping campaigns including advertising channel type // and shopping setting. .setAdvertisingChannelType(AdvertisingChannelType.SHOPPING) .setShoppingSetting(shoppingSetting) // Recommendation: Sets the campaign to PAUSED when creating it to prevent // the ads from immediately serving. Set to ENABLED once you've added // targeting and the ads are ready to serve. .setStatus(CampaignStatus.PAUSED) // Sets the bidding strategy to Manual CPC (with eCPC disabled). eCPC for standard // Shopping campaigns is deprecated. If eCPC is set to true, Google Ads ignores the // setting and behaves as if the setting was false. See this blog post for more // information: // https://ads-developers.googleblog.com/2023/09/google-ads-shopping-campaign-enhanced.html // Recommendation: Use one of the automated bidding strategies for Shopping campaigns // to help you optimize your advertising spend. More information can be found here: // https://support.google.com/google-ads/answer/6309029. .setManualCpc(ManualCpc.newBuilder().setEnhancedCpcEnabled(false).build()) // Sets the budget. .setCampaignBudget(budgetResourceName) .build(); // Creates a campaign operation. CampaignOperation operation = CampaignOperation.newBuilder().setCreate(campaign).build(); // Issues a mutate request to add the campaign. try (CampaignServiceClient campaignServiceClient = googleAdsClient.getLatestVersion().createCampaignServiceClient()) { MutateCampaignsResponse response = campaignServiceClient.mutateCampaigns( Long.toString(customerId), Collections.singletonList(operation)); MutateCampaignResult result = response.getResults(0); System.out.printf( "Added a standard shopping campaign with resource name: '%s'%n", result.getResourceName()); return result.getResourceName(); } }
C#
private string AddStandardShoppingCampaign(GoogleAdsClient client, long customerId, string budgetResourceName, long merchantCenterAccountId) { // Get the CampaignService. CampaignServiceClient campaignService = client.GetService(Services.V17.CampaignService); // Configures the shopping settings. ShoppingSetting shoppingSetting = new ShoppingSetting() { // Sets the priority of the campaign. Higher numbers take priority over lower // numbers. For Shopping Product Ad campaigns, allowed values are between 0 and 2, // inclusive. CampaignPriority = 0, MerchantId = merchantCenterAccountId, // Enables local inventory ads for this campaign. EnableLocal = true }; // Create the standard shopping campaign. Campaign campaign = new Campaign() { Name = "Interplanetary Cruise #" + ExampleUtilities.GetRandomString(), // Configures settings related to shopping campaigns including advertising channel // type and shopping setting. AdvertisingChannelType = AdvertisingChannelType.Shopping, ShoppingSetting = shoppingSetting, // Recommendation: Set the campaign to PAUSED when creating it to prevent // the ads from immediately serving. Set to ENABLED once you've added // targeting and the ads are ready to serve Status = CampaignStatus.Paused, // Sets the bidding strategy to Manual CPC (with eCPC disabled). eCPC for standard // Shopping campaigns is deprecated. If eCPC is set to true, Google Ads ignores the // setting and behaves as if the setting was false. See this blog post for more // information: // https://ads-developers.googleblog.com/2023/09/google-ads-shopping-campaign-enhanced.html // Recommendation: Use one of the automated bidding strategies for Shopping // campaigns to help you optimize your advertising spend. More information can be // found here: https://support.google.com/google-ads/answer/6309029 ManualCpc = new ManualCpc() { EnhancedCpcEnabled = false }, // Sets the budget. CampaignBudget = budgetResourceName }; // Creates a campaign operation. CampaignOperation operation = new CampaignOperation() { Create = campaign }; // Issues a mutate request to add the campaign. MutateCampaignsResponse response = campaignService.MutateCampaigns(customerId.ToString(), new CampaignOperation[] { operation }); MutateCampaignResult result = response.Results[0]; Console.WriteLine("Added a standard shopping campaign with resource name: '{0}'.", result.ResourceName); return result.ResourceName; }
PHP
private static function addStandardShoppingCampaign( GoogleAdsClient $googleAdsClient, int $customerId, string $budgetResourceName, int $merchantCenterAccountId ) { // Creates a standard shopping campaign. $campaign = new Campaign([ 'name' => 'Interplanetary Cruise Campaign #' . Helper::getPrintableDatetime(), // Configures settings related to shopping campaigns including advertising channel type // and shopping setting. 'advertising_channel_type' => AdvertisingChannelType::SHOPPING, // Configures the shopping settings. 'shopping_setting' => new ShoppingSetting([ // Sets the priority of the campaign. Higher numbers take priority over lower // numbers. For Shopping product ad campaigns, allowed values are between 0 and 2, // inclusive. 'campaign_priority' => 0, 'merchant_id' => $merchantCenterAccountId, // Enables local inventory ads for this campaign 'enable_local' => true ]), // Recommendation: Set the campaign to PAUSED when creating it to prevent // the ads from immediately serving. Set to ENABLED once you've added // targeting and the ads are ready to serve. 'status' => CampaignStatus::PAUSED, // Sets the bidding strategy to Manual CPC (with eCPC disabled). eCPC for standard // Shopping campaigns is deprecated. If eCPC is set to true, Google Ads ignores the // setting and behaves as if the setting was false. See this blog post for more // information: // https://ads-developers.googleblog.com/2023/09/google-ads-shopping-campaign-enhanced.html // Recommendation: Use one of the automated bidding strategies for Shopping campaigns // to help you optimize your advertising spend. More information can be found here: // https://support.google.com/google-ads/answer/6309029. 'manual_cpc' => new ManualCpc(['enhanced_cpc_enabled' => false]), // Sets the budget. 'campaign_budget' => $budgetResourceName ]); // Creates a campaign operation. $campaignOperation = new CampaignOperation(); $campaignOperation->setCreate($campaign); // Issues a mutate request to add campaigns. $campaignServiceClient = $googleAdsClient->getCampaignServiceClient(); $response = $campaignServiceClient->mutateCampaigns( MutateCampaignsRequest::build($customerId, [$campaignOperation]) ); /** @var Campaign $addedCampaign */ $addedCampaign = $response->getResults()[0]; printf( "Added a standard shopping campaign with resource name '%s'.%s", $addedCampaign->getResourceName(), PHP_EOL ); return $addedCampaign->getResourceName(); }
Python
def add_standard_shopping_campaign( client, customer_id, budget_resource_name, merchant_center_account_id ): """Creates a new standard shopping campaign in the specified client account.""" campaign_service = client.get_service("CampaignService") # Create standard shopping campaign. campaign_operation = client.get_type("CampaignOperation") campaign = campaign_operation.create campaign.name = f"Interplanetary Cruise Campaign {uuid.uuid4()}" # Configures settings related to shopping campaigns including advertising # channel type and shopping setting. campaign.advertising_channel_type = ( client.enums.AdvertisingChannelTypeEnum.SHOPPING ) campaign.shopping_setting.merchant_id = merchant_center_account_id # Sets the priority of the campaign. Higher numbers take priority over lower # numbers. For standard shopping campaigns, allowed values are between 0 and # 2, inclusive. campaign.shopping_setting.campaign_priority = 0 # Enables local inventory ads for this campaign. campaign.shopping_setting.enable_local = True # Recommendation: Set the campaign to PAUSED when creating it to prevent the # ads from immediately serving. Set to ENABLED once you've added targeting # and the ads are ready to serve. campaign.status = client.enums.CampaignStatusEnum.PAUSED # Sets the bidding strategy to Manual CPC (with eCPC disabled). eCPC for # standard Shopping campaigns is deprecated. If eCPC is set to true, Google # Ads ignores the setting and behaves as if the setting was false. See this # blog post for more information: # https://ads-developers.googleblog.com/2023/09/google-ads-shopping-campaign-enhanced.html # Recommendation: Use one of the automated bidding strategies for Shopping # campaigns to help you optimize your advertising spend. More information # can be found here: https://support.google.com/google-ads/answer/6309029 campaign.manual_cpc.enhanced_cpc_enabled = False # Sets the budget. campaign.campaign_budget = budget_resource_name # Add the campaign. campaign_response = campaign_service.mutate_campaigns( customer_id=customer_id, operations=[campaign_operation] ) campaign_resource_name = campaign_response.results[0].resource_name print( "Added a standard shopping campaign with resource name " f"'{campaign_resource_name}'." ) return campaign_resource_name
小茹
def add_standard_shopping_campaign( client, customer_id, budget_name, merchant_center_id) operation = client.operation.create_resource.campaign do |campaign| campaign.name = "Interplanetary Cruise Campaign ##{(Time.new.to_f * 1000).to_i}" # Shopping campaign specific settings campaign.advertising_channel_type = :SHOPPING campaign.shopping_setting = client.resource.shopping_setting do |shopping_setting| shopping_setting.merchant_id = merchant_center_id shopping_setting.campaign_priority = 0 shopping_setting.enable_local = true end campaign.status = :PAUSED # Sets the bidding strategy to Manual CPC (with eCPC disabled). eCPC for standard # Shopping campaigns is deprecated. If eCPC is set to true, Google Ads ignores the # setting and behaves as if the setting was false. See this blog post for more # information: # https://ads-developers.googleblog.com/2023/09/google-ads-shopping-campaign-enhanced.html campaign.manual_cpc = client.resource.manual_cpc do |manual_cpc| manual_cpc.enhanced_cpc_enabled = false end campaign.campaign_budget = budget_name end service = client.service.campaign response = service.mutate_campaigns( customer_id: customer_id, operations: [operation], ) campaign_name = response.results.first.resource_name puts "Added a standard shopping campaign with resource name #{campaign_name}." campaign_name end
Perl
sub add_standard_shopping_campaign { my ($api_client, $customer_id, $budget_resource_name, $merchant_center_account_id) = @_; # Create a standard shopping campaign. my $campaign = Google::Ads::GoogleAds::V17::Resources::Campaign->new({ name => "Interplanetary Cruise Campaign #" . uniqid(), # Configure settings related to shopping campaigns including advertising # channel type and shopping setting. advertisingChannelType => SHOPPING, shoppingSetting => Google::Ads::GoogleAds::V17::Resources::ShoppingSetting->new({ merchantId => $merchant_center_account_id, # Set the priority of the campaign. Higher numbers take priority over # lower numbers. For standard shopping campaigns, allowed values are # between 0 and 2, inclusive. campaignPriority => 0, # Enable local inventory ads for this campaign. enableLocal => "true" } ), # Recommendation: Set the campaign to PAUSED when creating it to prevent # the ads from immediately serving. Set to ENABLED once you've added # targeting and the ads are ready to serve. status => Google::Ads::GoogleAds::V17::Enums::CampaignStatusEnum::PAUSED, # Set the bidding strategy to Manual CPC (with eCPC disabled). eCPC for # standard Shopping campaigns is deprecated. If eCPC is set to true, # Google Ads ignores the setting and behaves as if the setting was false. # See this blog post for more information: # https://ads-developers.googleblog.com/2023/09/google-ads-shopping-campaign-enhanced.html # Recommendation: Use one of the automated bidding strategies for shopping # campaigns to help you optimize your advertising spend. More information # can be found here: https://support.google.com/google-ads/answer/6309029. manualCpc => Google::Ads::GoogleAds::V17::Common::ManualCpc->new( {enhancedCpcEnabled => "false"} ), # Set the budget. campaignBudget => $budget_resource_name }); # Create a campaign operation. my $campaign_operation = Google::Ads::GoogleAds::V17::Services::CampaignService::CampaignOperation-> new({create => $campaign}); # Add the campaign. my $campaign_resource_name = $api_client->CampaignService()->mutate({ customerId => $customer_id, operations => [$campaign_operation]})->{results}[0]{resourceName}; printf "Added a standard shopping campaign with resource name: '%s'.\n", $campaign_resource_name; return $campaign_resource_name; }