Per expression_rule_user_list
,
occorre fare un'ulteriore distinzione. Per impostazione predefinita, Google Ads AND
raggruppa tutti gli elementi regola in un gruppo di elementi regola. Ciò significa che ogni elemento della regola in almeno un gruppo di elementi della regola deve corrispondere affinché la regola possa aggiungere un visitatore all'elenco. Questa è la "forma normale disgiuntiva", o OR_OF_ANDS
.
In alternativa, puoi configurare l'elenco in modo da aggiungere un visitatore solo se almeno un elemento della regola in ogni gruppo di elementi della regola corrisponde. Questa
è chiamata "forma normale congiuntiva" o
AND_OF_ORS
,
ed è disponibile per expression_rule_user_list
utilizzando il
campo
rule_type
. Se provi a usare AND_OF_ORS
per un date_specific_rule_user_list
, verrà visualizzato un errore.
Non resta che combinare i gruppi di elementi regolari sopra indicati in un nuovo elenco di utenti. In questo caso, lasceremo invariata la funzionalità OR_OF_ANDS
predefinita, poiché è per questo che abbiamo creato queste regole.
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 => []});
Includi gli utenti precedenti nell'elenco
Puoi anche includere gli utenti precedenti in un elenco di utenti basato su regole impostando il valore prepopulation_status
dell'elenco degli utenti su REQUESTED
e monitorare lo stato di avanzamento della procedura di precompilazione asincrona controllando periodicamente lo stato di questo campo.
Verranno aggiunti solo gli utenti passati degli ultimi 30 giorni, a seconda della durata dell'iscrizione all'elenco e della data di aggiunta del tag di remarketing. Lo stato verrà aggiornato in
FINISHED
al termine dell'elaborazione della richiesta o in
FAILED
caso di esito negativo.