پویشهای «عملکرد بیشینه» ویژگیهای منحصربهفردی دررابطهبا داراییها دارند.
- گروههای دارایی باید حداقل الزامات دارایی را در انواع داراییها برآورده کنند، بهاستثنای کمپینهای خردهفروشی و خدمات محلی.
- داراییها در یک
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.V26.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::V26::Services::GoogleAdsService::MutateOperation ->new({ assetOperation => Google::Ads::GoogleAds::V26::Services::AssetService::AssetOperation-> new({ create => Google::Ads::GoogleAds::V26::Resources::Asset->new({ textAsset => Google::Ads::GoogleAds::V26::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 اجازه میدهد بهطور خودکار داراییهای نوشتاری را برای آگهیهایتان بسازد و سفارشی کند. میتوانید با مرتبط کردن دربرگیریهای نشانی وب (فیدهای صفحه) در حسابتان با پویش «عملکرد بیشینه» برای تولید داراییهای نوشتاری، این ویژگی را تقویت کنید.
برای پیوند دادن دربرگیری نشانی وب با کمپین، از همان فرایندی استفاده کنید که برای «آگهیهای جستجوهای پویا» استفاده میشود:
- ایجاد دارایی برای هر صفحه از وبسایت
- گنجاندن نشانیهای وب صفحه بسته در AssetSet
- مرتبط کردن AssetSet با پویش
پساز مرتبط کردن گنجاندن نشانیهای وب (فید صفحه)، مطمئن شوید که
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 را با پلاتفرمها و نشانیهای وب منبع تأییدشدهتان
پیکربندی کنید. برای جزئیات بیشتر،
راهنمای تنظیمات خودکارسازی دارایی را ببینید.