پویشهای «عملکرد بیشینه» ویژگیهای منحصربهفردی دررابطهبا داراییها دارند.
- حداقل تعداد لازم دارایی از انواع مختلف وجود دارد.
- داراییها در مجموعهای بهنام
AssetGroupگروهبندی میشوند که مختص پویشهای «عملکرد بیشینه» است. - برخیاز داراییها را میتوان بهطور خودکار با یادگیری ماشین تولید کرد.
رهنمودهای نمانام: پیوند نام و نشانواره کسبوکار
درحالیکه اکثر داراییها در کمپین «عملکرد بیشینه» در گروههای دارایی سازماندهی میشوند، داراییهای کلیدی که هویت نمانام شما را نشان میدهند (بهویژه نام کسبوکار و نشانواره کسبوکار) اگر دستورالعملهای نمانام برای کمپین شما فعال باشد، بهطور متفاوتی مدیریت میشوند.
این داراییهای رهنمود نمانام مستقیماً در سطح پویش پیوند داده شدهاند، نه در سطح «گروه دارایی». این کار بااستفاده از منبع CampaignAsset انجام میشود. دارایی را به پویش پیوند میدهید و
AssetFieldType مناسب را مشخص میکنید:
-
BUSINESS_NAMEبرای دارایی «نام کسبوکار» (که «دارایی نوشتاری» است). LOGOبرای دارایی «نشانواره کسبوکار» (که «دارایی تصویری» است).
این پیوند در سطح پویش، نمایش نمانام را در همه گروههای دارایی در پویش «عملکرد بیشینه» تضمین میکند.
نمونه کد
تکهکد زیر ایجاد داراییهای تکراری لازم را در درخواست جدید نشان میدهد:
جاوا
/** Creates multiple text assets and returns the list of resource names. */ private List<String> createMultipleTextAssets( GoogleAdsClient googleAdsClient, long customerId, List<String> texts) { List<MutateOperation> mutateOperations = new ArrayList<>(); for (String text : texts) { Asset asset = Asset.newBuilder().setTextAsset(TextAsset.newBuilder().setText(text)).build(); AssetOperation assetOperation = AssetOperation.newBuilder().setCreate(asset).build(); mutateOperations.add(MutateOperation.newBuilder().setAssetOperation(assetOperation).build()); } List<String> assetResourceNames = new ArrayList<>(); // Creates the service client. try (GoogleAdsServiceClient googleAdsServiceClient = googleAdsClient.getLatestVersion().createGoogleAdsServiceClient()) { // Sends the operations in a single Mutate request. MutateGoogleAdsResponse response = googleAdsServiceClient.mutate(Long.toString(customerId), mutateOperations); for (MutateOperationResponse result : response.getMutateOperationResponsesList()) { if (result.hasAssetResult()) { assetResourceNames.add(result.getAssetResult().getResourceName()); } } printResponseDetails(response); } return assetResourceNames; }
C#
/// <summary> /// Creates multiple text assets and returns the list of resource names. /// </summary> /// <param name="client">The Google Ads Client.</param> /// <param name="customerId">The customer's ID.</param> /// <param name="texts">The texts to add.</param> /// <returns>A list of asset resource names.</returns> private List<string> CreateMultipleTextAssets( GoogleAdsClient client, long customerId, string[] texts) { // Get the GoogleAdsService. GoogleAdsServiceClient googleAdsServiceClient = client.GetService(Services.V25.GoogleAdsService); MutateGoogleAdsRequest request = new MutateGoogleAdsRequest() { CustomerId = customerId.ToString() }; foreach (string text in texts) { request.MutateOperations.Add( new MutateOperation() { AssetOperation = new AssetOperation() { Create = new Asset() { TextAsset = new TextAsset() { Text = text } } } } ); } // Send the operations in a single Mutate request. MutateGoogleAdsResponse response = googleAdsServiceClient.Mutate(request); List<string> assetResourceNames = new List<string>(); foreach (MutateOperationResponse operationResponse in response.MutateOperationResponses) { MutateAssetResult assetResult = operationResponse.AssetResult; assetResourceNames.Add(assetResult.ResourceName); } PrintResponseDetails(response); return assetResourceNames; }
PHP
private static function createMultipleTextAssets( GoogleAdsClient $googleAdsClient, int $customerId, array $texts ): array { // Here again, we use the GoogleAdService to create multiple text assets in a single // request. $operations = []; foreach ($texts as $text) { // Creates a mutate operation for a text asset. $operations[] = new MutateOperation( [ 'asset_operation' => new AssetOperation( [ 'create' => new Asset(['text_asset' => new TextAsset(['text' => $text])]) ] ) ] ); } // Issues a mutate request to add all assets. $googleAdsService = $googleAdsClient->getGoogleAdsServiceClient(); /** * @var MutateGoogleAdsResponse $mutateGoogleAdsResponse */ $mutateGoogleAdsResponse = $googleAdsService->mutate(MutateGoogleAdsRequest::build($customerId, $operations)); $assetResourceNames = []; foreach ($mutateGoogleAdsResponse->getMutateOperationResponses() as $response) { /** * @var MutateOperationResponse $response */ $assetResourceNames[] = $response->getAssetResult()->getResourceName(); } self::printResponseDetails($mutateGoogleAdsResponse); return $assetResourceNames; }
Python
def create_multiple_text_assets( client: GoogleAdsClient, customer_id: str, texts: List[str] ) -> List[str]: """Creates multiple text assets and returns the list of resource names. Args: client: an initialized GoogleAdsClient instance. customer_id: a client customer ID. texts: a list of strings, each of which will be used to create a text asset. Returns: asset_resource_names: a list of asset resource names. """ # Here again we use the GoogleAdService to create multiple text # assets in a single request. googleads_service: GoogleAdsServiceClient = client.get_service( "GoogleAdsService" ) operations: List[MutateOperation] = [] for text in texts: mutate_operation: MutateOperation = client.get_type("MutateOperation") asset: Asset = mutate_operation.asset_operation.create asset.text_asset.text = text operations.append(mutate_operation) # Send the operations in a single Mutate request. response: MutateGoogleAdsResponse = googleads_service.mutate( customer_id=customer_id, mutate_operations=operations, ) asset_resource_names: List[str] = [] for result in response.mutate_operation_responses: if result._pb.HasField("asset_result"): asset_resource_names.append(result.asset_result.resource_name) print_response_details(response) return asset_resource_names
Ruby
# Creates multiple text assets and returns the list of resource names. def create_multiple_text_assets(client, customer_id, texts) operations = texts.map do |text| client.operation.mutate do |m| m.asset_operation = client.operation.create_resource.asset do |asset| asset.text_asset = client.resource.text_asset do |text_asset| text_asset.text = text end end end end # Send the operations in a single Mutate request. response = client.service.google_ads.mutate( customer_id: customer_id, mutate_operations: operations, ) asset_resource_names = [] response.mutate_operation_responses.each do |result| if result.asset_result asset_resource_names.append(result.asset_result.resource_name) end end print_response_details(response) asset_resource_names end
پرل
sub create_multiple_text_assets { my ($api_client, $customer_id, $texts) = @_; # Here again we use the GoogleAdService to create multiple text assets in a # single request. my $operations = []; foreach my $text (@$texts) { # Create a mutate operation for a text asset. push @$operations, Google::Ads::GoogleAds::V25::Services::GoogleAdsService::MutateOperation ->new({ assetOperation => Google::Ads::GoogleAds::V25::Services::AssetService::AssetOperation-> new({ create => Google::Ads::GoogleAds::V25::Resources::Asset->new({ textAsset => Google::Ads::GoogleAds::V25::Common::TextAsset->new({ text => $text })})})}); } # Issue a mutate request to add all assets. my $mutate_google_ads_response = $api_client->GoogleAdsService()->mutate({ customerId => $customer_id, mutateOperations => $operations }); my $asset_resource_names = []; foreach my $response (@{$mutate_google_ads_response->{mutateOperationResponses}}) { push @$asset_resource_names, $response->{assetResult}{resourceName}; } print_response_details($mutate_google_ads_response); return $asset_resource_names; }
curl
خودکارسازی دارایی
خودکارسازی Google بااستفاده از یادگیری ماشین، داراییهای بیشتری را درصورت نیاز تولید میکند تا همه کانالهای مربوط را پوشش دهد. داراییها بهطور خودکار براساس کانال Google Ad (مثل YouTube، Gmail، یا «جستجو») که آگهیتان در آن ارائه میشود، ترکیب و مطابقت داده میشوند. برای جزئیات بیشتر درباره مدیریت این تنظیمات، راهنمای تنظیمات خودکارسازی دارایی را ببینید.
سفارشیسازی نوشتار
سفارشیسازی نوشتار به هوش مصنوعی Google اجازه میدهد بهطور خودکار داراییهای نوشتاری را برای آگهیهایتان بسازد و سفارشیسازی کند. میتوانید با مرتبط کردن گنجاندن نشانیهای وب (فیدهای صفحه) در حسابتان با پویش «عملکرد بیشینه» برای تولید داراییهای نوشتاری، این ویژگی را تقویت کنید.
برای پیوند دادن دربرگیریهای نشانی وب با پویش، از همان فرایندی که برای «آگهیهای جستجوهای پویا» استفاده میشود استفاده کنید:
- ایجاد دارایی برای هر صفحه از وبسایت
- گنجاندن نشانیهای وب صفحه بسته در «مجموعه دارایی»
- «مجموعه دارایی» را با پویشی مرتبط کنید
پساز مرتبط کردن گنجاندنهای نشانی وب (فید صفحه)، مطمئن شوید که
AssetAutomationSetting از نوع TEXT_ASSET_AUTOMATION روی
OPTED_IN تنظیم شده باشد.
اگر هنگام ایجاد پویش، AssetAutomationSetting را تنظیم نکرده باشید، این تنظیم پیشفرض است.
استفاده از این تنظیم به این معنی است که پویش شما میتواند از محتوای صفحه مقصد، دامنه، و داراییهای ارائهشده شما برای سفارشیسازی آگهیها استفاده کند، درصورتیکه پیشبینی شود این کار عملکرد را بهبود میبخشد. توصیه میکنیم این مقدار را روی OPTED_IN بگذارید.
رهنمودهای نوشتاری
رهنمودهای نوشتاری به شما امکان میدهد با مشخص کردن مستثنا کردن واژهها و محدودیتهای پیامرسانی، پیامهای نمانام را برای داراییهای نوشتاری تولیدشده بهطور خودکار پالایش کنید.
برای استفاده از دستورالعملهای نوشتاری، فیلد text_guidelines منبع Campaign را پر کنید:
- استثناهای عبارت: فهرستی از کلمات یا عبارات دقیق ارائه دهید تا از داراییهای نوشتاری تولیدشده مستثنا شوند. هر استثنا میتواند حداکثر ۳۰ نویسه داشته باشد و حداکثر ۲۵ استثنا میتوانید داشته باشید.
- محدودیتهای پیامرسانی: دستورالعملهای قالبآزاد (هرکدام حداکثر ۳۰۰ نویسه) برای هدایت تولید نوشتار هوش مصنوعی ارائه دهید. میتوانید تا ۴۰ محدودیت ارائه دهید. فقط
RESTRICTION_BASED_EXCLUSIONبرای نوع محدودیت پشتیبانی میشود.
داراییهای ویدیو
اگر ویدیویی به گروه دارایی «عملکرد بیشینه» خود اضافه نکنید، ممکن است یک یا چند دارایی ویدیویی از داراییهای گروه دارایی شما تولید شود. اگر دیگر نمیخواهید ویدیوهای تولیدشده بهطور خودکار در پویش «عملکرد بیشینه» شما ارائه شود، میتوانید ویدیو سفارشی خودتان را بارگذاری کنید و ارائه ویدیوهای تولیدشده بهطور خودکار متوقف خواهد شد.
خودکارسازی هوشمند ممکن است با تنظیم جهت ویدیو و کوتاه کردن هوشمندانه آن برای برجسته کردن لحظات کلیدی، داراییهای ویدیویی YouTube شما را بهبود دهد. اگر ترجیح میدهید داراییهای ویدیویی اصلی خود را حفظ کنید،
AssetAutomationSetting از نوع GENERATE_ENHANCED_YOUTUBE_VIDEOS
را روی OPTED_OUT تنظیم کنید.
Google همچنین میتواند ویدیوهای مرتبط را از منابع تأییدشده مانند صفحه مقصد، کانال YouTube، و کانالهای اجتماعی طبیعی پیوندشده در صفحه مقصدتان پیدا و استفاده کند (ویدیوهای منبعیابیشده). این ویژگی اختیاری بهطور پیشفرض غیرفعال است. برای موافقت کردن، AssetAutomationSetting از نوع
AUTOMATED_VIDEO_CRAWL را روی OPTED_IN تنظیم کنید و
automated_video_crawl_setting را با
نشانیهای وب و پلاتفرمهای منبع تأییدشدهتان پیکربندی کنید. برای جزئیات بیشتر،
راهنمای تنظیمات خودکارسازی دارایی را ببینید.