יצירת קבוצות כרטיסי מוצר לקבוצות של מודעות לקידום עסקים בענף התיירות והאירוח מתבצעת לפי אותה היררכיה מבנית ותהליך בניית עץ כמו קבוצות של כרטיסי מוצר במודעות להזמנת חדרים.
כדי לחלק את מלאי המוצרים של 'דברים לעשות', משתמשים במאפייני הפעילות המיוחדים שזמינים ב-ListingDimensionInfo:
-
ActivityCountryInfo: סינון לפי מדינת היעד (value), באמצעות שם משאב של קבוע לטירגוט גיאוגרפי (geoTargetConstants/{criterion_id}, כמו"geoTargetConstants/2840"לארה"ב). -
ActivityStateInfo: סינון לפי מצב או אזור יעד (value), באמצעות שם משאב של קבוע לטירגוט גיאוגרפי (geoTargetConstants/{criterion_id}). -
ActivityCityInfo: סינון לפי עיר היעד (value), באמצעות שם משאב של קבוע לטירגוט גיאוגרפי (geoTargetConstants/{criterion_id}, כמו"geoTargetConstants/1023191"לעיר ניו יורק). -
ActivityRatingInfo: סינון לפי כוכב הפעילות או דירוג המשתמש (value, מספר שלם מ-1עד5, כאשר5הוא הדירוג הטוב ביותר). -
ActivityIdInfo: סינון לפי מזהה הפעילות הספציפי שמוגדר בפיד של מרכז 'פעילויות לביצוע' (value).
כללים להיררכיית מאפיינים
כשיוצרים עץ של קבוצות כרטיסי מוצר של פעילויות, צריך לפעול לפי הכללים הבאים:
- צומת הבסיס: כל עץ של קבוצת כרטיסי מוצר חייב להתחיל עם צומת בסיס יחיד
AdGroupCriterionשהערך שלlisting_group.typeשלו הואSUBDIVISION(אוUNITאם רוצים צומת יחיד שכולל את כל המוצרים) והערך שלcase_valueשלו לא מוגדר. - חלוקות משנה ויחידות: בצמתי ביניים צריך להגדיר את הערך
typeכ-SUBDIVISION, ובצמתי עלים צריך להגדיר את הערךtypeכ-UNIT. ההגדרהcpc_bid_microsבצמתיUNITהיא אופציונלית בקמפיינים לפלטפורמת 'דברים שאפשר לעשות' כי הבידינג מנוהל באופן אוטומטי על ידי שיטת הבידינג של הקמפייןMaximizeConversionValue. כדי להחריג יחידת עלים מהצגת מודעות, מגדירים את הערךnegative = trueבמאפייןAdGroupCriterionשלה. - צמתי גיבוי ('כל השאר'): כל חלוקת משנה חייבת להיות מחולקת באופן מלא. כל צאצא ישיר של חלוקת משנה חייב להשתמש באותו
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)
קוד לדוגמה
בדוגמה הבאה של Python נוצרת קטגוריית שורש 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
)
המאמרים הבאים
- מריצים שאילתות על מדדי ביצועים של פעילויות בדוחות על דברים שאפשר לעשות.