ההיררכיה המבנית ותהליך בניית העץ של קבוצות של כרטיסי מוצר בקבוצות של מודעות בפלטפורמת "דברים שאפשר לעשות" זהים לאלה של קבוצות של כרטיסי מוצר במודעות להזמנת חדרים.
כדי לחלק את מלאי המוצרים של "דברים שאפשר לעשות", משתמשים במאפייני הפעילות המיוחדים שזמינים ב-ListingDimensionInfo:
-
ActivityCountryInfo: סינון לפי מדינת היעד (value), באמצעות שם משאב של קבוע טירגוט גיאוגרפי (geoTargetConstants/{criterion_id}, למשל"geoTargetConstants/2840"לארה"ב). -
ActivityStateInfo: סינון לפי המדינה או האזור של היעד (value), באמצעות שם המשאב Geo Target Constant (geoTargetConstants/{criterion_id}). -
ActivityCityInfo: סינון לפי עיר היעד (value), באמצעות שם משאב של קבוע טירגוט גיאוגרפי (geoTargetConstants/{criterion_id}, למשל"geoTargetConstants/1023191"לניו יורק). -
ActivityRatingInfo: סינון לפי כוכב הפעילות או דירוג המשתמש (value, מספר שלם מ-1עד5, כאשר5הוא הטוב ביותר). -
ActivityIdInfo: סינון לפי מזהה הפעילות הספציפי שמוגדר בפיד שלכם ב-Things to do Center (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
)
המאמרים הבאים
- מדדים לבדיקת ביצועים של פעילות שאילתות בדוחות של "דברים שאפשר לעשות".