לגבי expression_rule_user_list
, יש הבחנה נוספת. כברירת מחדל, מערכת Google Ads AND
את כל פריטי הכללים בקבוצת פריטים של כללים. המשמעות היא שכל פריט כלל בקבוצת פריטי כלל אחת לפחות חייב להתאים כדי שהכלל יוסיף מבקר לרשימה. זה נקרא 'צורה רגילה חלופית', או OR_OF_ANDS
.
לחלופין, אפשר להגדיר את הרשימה כך שתוסיף מבקרים לרשימה רק אם פריט כלל אחד לפחות בכל קבוצת פריטי כללים תואם. הפורמט הזה נקרא 'צורה רגילה מותנית', או AND_OF_ORS
, והוא זמין ב-expression_rule_user_list
באמצעות השדה rule_type
. ניסיון להשתמש ב-AND_OF_ORS
עבור date_specific_rule_user_list
יוביל לשגיאה.
כל מה שנותר הוא לשלב את קבוצות הפריטים של הכללים שלמעלה ברשימה חדשה של משתמשים. במקרה כזה, נשאיר את פונקציונליות OR_OF_ANDS
שמוגדרת כברירת מחדל, כי זה למה יצרנו את הכללים האלה.
Java
FlexibleRuleUserListInfo flexibleRuleUserListInfo = FlexibleRuleUserListInfo.newBuilder() .setInclusiveRuleOperator(UserListFlexibleRuleOperator.AND) .addInclusiveOperands( FlexibleRuleOperandInfo.newBuilder() .setRule( // The default rule_type for a UserListRuleInfo object is OR of ANDs // (disjunctive normal form). That is, rule items will be ANDed together // within rule item groups and the groups themselves will be ORed together. UserListRuleInfo.newBuilder() .addRuleItemGroups(checkoutDateRuleGroup) .addRuleItemGroups(checkoutAndCartSizeRuleGroup)) // Optional: includes a lookback window for this rule, in days. .setLookbackWindowDays(7L)) .build();
C#
FlexibleRuleUserListInfo flexibleRuleUserListInfo = new FlexibleRuleUserListInfo(); FlexibleRuleOperandInfo flexibleRuleOperandInfo = new FlexibleRuleOperandInfo() { Rule = new UserListRuleInfo() }; flexibleRuleOperandInfo.Rule.RuleItemGroups.Add(checkoutAndCartSizeRuleGroup); flexibleRuleOperandInfo.Rule.RuleItemGroups.Add(checkoutDateRuleGroup); flexibleRuleUserListInfo.InclusiveOperands.Add(flexibleRuleOperandInfo);
PHP
$flexibleRuleUserListInfo = new FlexibleRuleUserListInfo([ 'inclusive_rule_operator' => UserListFlexibleRuleOperator::PBAND, 'inclusive_operands' => [ new FlexibleRuleOperandInfo([ 'rule' => new UserListRuleInfo([ // The default rule_type for a UserListRuleInfo object is OR of ANDs // (disjunctive normal form). That is, rule items will be ANDed together // within rule item groups and the groups themselves will be ORed together. 'rule_item_groups' => [ $checkoutAndCartSizeRuleGroup, $checkoutDateRuleGroup ] ]), // Optionally add a lookback window for this rule, in days. 'lookback_window_days' => 7 ]) ], 'exclusive_operands' => [] ]);
Python
# Create a FlexibleRuleUserListInfo object, or a flexible rule # representation of visitors with one or multiple actions. # FlexibleRuleUserListInfo wraps UserListRuleInfo in a # FlexibleRuleOperandInfo object that represents which user lists to # include or exclude. flexible_rule_user_list_info = ( rule_based_user_list_info.flexible_rule_user_list ) flexible_rule_user_list_info.inclusive_rule_operator = ( client.enums.UserListFlexibleRuleOperatorEnum.AND ) # The default rule_type for a UserListRuleInfo object is OR of # ANDs (disjunctive normal form). That is, rule items will be # ANDed together within rule item groups and the groups # themselves will be ORed together. rule_operand = client.get_type("FlexibleRuleOperandInfo") rule_operand.rule.rule_item_groups.extend( [ checkout_and_cart_size_rule_group, checkout_date_rule_group, ] ) rule_operand.lookback_window_days = 7 flexible_rule_user_list_info.inclusive_operands.append(rule_operand)
Ruby
r.flexible_rule_user_list = client.resource.flexible_rule_user_list_info do |frul| frul.inclusive_rule_operator = :AND frul.inclusive_operands << client.resource.flexible_rule_operand_info do |froi| froi.rule = client.resource.user_list_rule_info do |info| info.rule_item_groups += [checkout_date_rule_group, checkout_and_cart_size_rule_group] end # Optionally include a lookback window for this rule, in days. froi.lookback_window_days = 7 end end
Perl
my $flexible_rule_user_list_info = Google::Ads::GoogleAds::V18::Common::FlexibleRuleUserListInfo->new({ inclusiveRuleOperator => AND, inclusiveOperands => [ Google::Ads::GoogleAds::V18::Common::FlexibleRuleOperandInfo->new({ rule => Google::Ads::GoogleAds::V18::Common::UserListRuleInfo->new({ # The default rule_type for a UserListRuleInfo object is OR of # ANDs (disjunctive normal form). That is, rule items will be # ANDed together within rule item groups and the groups # themselves will be ORed together. ruleItemGroups => [ $checkout_date_rule_group, $checkout_and_cart_size_rule_group ]} ), # Optionally include a lookback window for this rule, in days. lookback_window_days => 7 }) ], exclusiveOperands => []});
הכללת משתמשים קודמים ברשימה
אפשר גם לכלול משתמשים קודמים ברשימת משתמשים מבוססת-כללים על ידי הגדרת הערך REQUESTED
לשדה prepopulation_status
של רשימת המשתמשים, ולעקוב אחרי ההתקדמות של תהליך האכלוס המוקדם האסינכרוני על ידי בדיקה מדי פעם של הסטטוס של השדה הזה.
המערכת תוסיף רק משתמשים קודמים מ-30 הימים האחרונים, בהתאם למשך החברות ברשימה ולתאריך שבו תג הרימרקטינג נוסף. הסטטוס יתעדכן ל-FINISHED
אחרי עיבוד הבקשה, או ל-FAILED
אם הבקשה נכשלה.