ایجاد گروههای فهرستبندی برای گروههای تبلیغاتی Things to do از همان سلسله مراتب ساختاری و فرآیند درختسازی گروههای فهرستبندی Hotel Ads پیروی میکند.
برای تقسیمبندی موجودی «کارهایی که باید انجام دهید»، از ابعاد فعالیت تخصصی موجود در ListingDimensionInfo استفاده کنید:
-
ActivityCountryInfo: فیلترها بر اساس کشور مقصد (value) و با استفاده از نام منبع Geo Target Constant (geoTargetConstants/{criterion_id}، مانند"geoTargetConstants/2840"برای ایالات متحده) انجام میشوند. -
ActivityStateInfo: فیلترها را بر اساس ایالت یا منطقه مقصد (value) و با استفاده از نام منبع Geo Target Constant (geoTargetConstants/{criterion_id}) انجام میدهد. -
ActivityCityInfo: فیلترها بر اساس شهر مقصد (value) و با استفاده از نام منبع Geo Target Constant (geoTargetConstants/{criterion_id}، مانند"geoTargetConstants/1023191"برای شهر نیویورک) انجام میشوند. -
ActivityRatingInfo: فیلترها بر اساس ستاره فعالیت یا امتیاز کاربر (value، یک عدد صحیح از1تا5، که5بهترین است). -
ActivityIdInfo: بر اساس شناسه فعالیت خاص تعریف شده در فید (value) مرکز کارهای شما فیلتر میکند.
قوانین سلسله مراتب ابعاد
هنگام ساخت درختواره گروهی فهرست کارها، این قوانین را دنبال کنید:
- گره ریشه : هر درخت گروه فهرستبندی باید با یک
AdGroupCriterionریشه واحد شروع شود کهlisting_group.typeآنSUBDIVISION(یاUNITاگر یک گره catch-all میخواهید) باشد وcase_valueآن تنظیم نشده باشد. - زیربخشها و واحدها : شاخههای میانی باید
typeرویSUBDIVISIONتنظیم کنند، در حالی که گرههای برگ بایدtypeرویUNITتنظیم کنند. تنظیمcpc_bid_microsروی گرههایUNITبرای کمپینهای Things to do اختیاری است زیرا پیشنهاد قیمت به طور خودکار توسط استراتژیMaximizeConversionValueکمپین مدیریت میشود. برای حذف یک واحد برگ از سرویسدهی، مقدارAdGroupCriterionآن راnegative = trueقرار دهید. - گرههای جایگزین ("همه چیزهای دیگر") : هر زیربخش باید کاملاً پارتیشنبندی شود. همه فرزندان بلافصل یک زیربخش باید از زیرنوع
ListingDimensionInfoیکسانی استفاده کنند و یک فرزند باید یک نمونه خالی از آن زیرنوع باشد تا تمام موجودی باقیمانده را در بر بگیرد.
درخت زیر یک سلسله مراتب معتبر را نشان میدهد که بر اساس کشور، شهر و شناسه فعالیت تقسیمبندی شده است:
Root (SUBDIVISION)
├── ActivityCountryInfo: "geoTargetConstants/2840" (US, SUBDIVISION)
│ ├── ActivityCityInfo: "geoTargetConstants/1023191" (New York, SUBDIVISION)
│ │ ├── ActivityIdInfo: "activity_123" (UNIT, biddable)
│ │ └── ActivityIdInfo: <empty> (UNIT, "Everything else in New York")
│ └── ActivityCityInfo: <empty> (UNIT, "Everything else in US")
└── ActivityCountryInfo: <empty> (UNIT, negative=true, excluded)
مثال کد
مثال پایتون زیر یک SUBDIVISION ریشه با استفاده از یک شناسه موقت ( -1 ) ایجاد میکند و آن را بر اساس ActivityCountryInfo به یک واحد هدفمند برای ایالات متحده ( "geoTargetConstants/2840" ) و یک واحد جایگزین مستثنی برای سایر کشورها تقسیم میکند:
ad_group_service = client.get_service("AdGroupService")
ad_group_criterion_service = client.get_service("AdGroupCriterionService")
ad_group_resource_name = ad_group_service.ad_group_path(
customer_id, ad_group_id
)
operations = []
# 1. Create the root SUBDIVISION node with temporary criterion ID -1.
root_op = client.get_type("AdGroupCriterionOperation")
root = root_op.create
root.resource_name = ad_group_criterion_service.ad_group_criterion_path(
customer_id, ad_group_id, -1
)
root.status = client.enums.AdGroupCriterionStatusEnum.ENABLED
root.listing_group.type_ = client.enums.ListingGroupTypeEnum.SUBDIVISION
operations.append(root_op)
# 2. Create a child UNIT node targeting activities in the US.
us_op = client.get_type("AdGroupCriterionOperation")
us_unit = us_op.create
us_unit.ad_group = ad_group_resource_name
us_unit.status = client.enums.AdGroupCriterionStatusEnum.ENABLED
us_unit.listing_group.type_ = client.enums.ListingGroupTypeEnum.UNIT
us_unit.listing_group.parent_ad_group_criterion = root.resource_name
us_unit.listing_group.case_value.activity_country.value = "geoTargetConstants/2840"
operations.append(us_op)
# 3. Create the required fallback ("Everything else") UNIT node.
other_op = client.get_type("AdGroupCriterionOperation")
other_unit = other_op.create
other_unit.ad_group = ad_group_resource_name
other_unit.negative = True
other_unit.listing_group.type_ = client.enums.ListingGroupTypeEnum.UNIT
other_unit.listing_group.parent_ad_group_criterion = root.resource_name
client.copy_from(
other_unit.listing_group.case_value.activity_country,
client.get_type("ActivityCountryInfo"),
)
operations.append(other_op)
response = ad_group_criterion_service.mutate_ad_group_criteria(
customer_id=customer_id, operations=operations
)
قدم بعدی چیست؟
- معیارهای عملکرد فعالیت را در گزارش کارهای انجام شده جستجو کنید.