expression_rule_user_list
için dikkat edilmesi gereken başka bir nokta vardır. Varsayılan olarak Google Ads, bir kural öğesi grubundaki tüm kural öğelerini AND
birlikte gruplandırır. Yani kuralın ziyaretçiyi listeye eklemesi için en az bir kural öğesi grubundaki her kural öğesinin eşleşmesi gerekir. Buna "disjunctive normal form" (disjunctive normal form) veya OR_OF_ANDS
denir.
Alternatif olarak, listenizi yalnızca her kural öğesi grubunda en az bir kural öğesi eşleşirse ziyaretçi ekleyecek şekilde ayarlayabilirsiniz. Buna "birleştirici normal biçim" veya AND_OF_ORS
denir ve rule_type
alanı kullanılarak expression_rule_user_list
için kullanılabilir. date_specific_rule_user_list
için AND_OF_ORS
kullanmaya çalışmak hataya neden olur.
Geriye kalan tek şey, yukarıdaki kural öğesi gruplarını yeni bir kullanıcı listesinde birleştirmektir. Bu durumda, bu kuralları bu amaç doğrultusunda oluşturduğumuz için varsayılan OR_OF_ANDS
işlevini etkin durumda bırakacağız.
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 => []});
Listeye geçmişteki kullanıcıları dahil etme
Ayrıca, kullanıcı listesinin prepopulation_status
değerini REQUESTED
olarak ayarlayarak geçmiş kullanıcıları kurala dayalı bir kullanıcı listesine dahil edebilir ve bu alanın durumunu düzenli olarak kontrol ederek asenkron ön doldurma işleminin ilerleme durumunu izleyebilirsiniz.
Bu işlem, listenin üyelik süresine ve yeniden pazarlama etiketinin eklenme tarihine bağlı olarak yalnızca son 30 gün içindeki eski kullanıcıları ekler. İstek işlendikten sonra durum FINISHED
olarak, istekte başarısız olunursa FAILED
olarak güncellenir.