Création de la liste d'utilisateurs

Pour expression_rule_user_list, il faut faire une distinction supplémentaire. Par par défaut, Google Ads AND combinera tous les éléments de règle d'un élément de règle groupe. Cela signifie que chaque élément de règle d'au moins un groupe d'éléments de règle doit correspondre pour que la règle ajoute un visiteur à la liste. C'est ce qu'on appelle "forme normale disjonctive" ou OR_OF_ANDS.

Vous pouvez également configurer votre liste pour n'ajouter un visiteur à la liste que si au moins un élément de règle dans chaque groupe d'éléments de règle correspond. Ce est appelée « forme normale conjonctive », ou AND_OF_ORS, et est disponible pour expression_rule_user_list à l'aide de la commande rule_type. Tentative de utilisez AND_OF_ORS pour date_specific_rule_user_list génèrent une erreur.

Il ne vous reste plus qu'à combiner les groupes d'éléments de règle ci-dessus pour obtenir un nouvel utilisateur. liste. Dans ce cas, nous allons laisser la fonctionnalité OR_OF_ANDS par défaut en place, car c'est pour cela que nous avons créé ces règles.

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::V17::Common::FlexibleRuleUserListInfo->new({
    inclusiveRuleOperator => AND,
    inclusiveOperands     => [
      Google::Ads::GoogleAds::V17::Common::FlexibleRuleOperandInfo->new({
          rule => Google::Ads::GoogleAds::V17::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 => []});
      

Limiter par plage de dates de la visite du site

L'expression_rule_user_list ci-dessus répond à vos besoins, mais que se passe-t-il Vous souhaitez identifier les utilisateurs qui satisfont à la règle de cette liste et qui consultent votre site. entre le 1er octobre et le 31 décembre ? Utilisez date_specific_rule_user_list.

Pour créer un date_specific_rule_user_list, procédez comme vous le feriez pour un expression_rule_user_list. Au lieu de définir Champ expression_rule_user_list de votre RuleBasedUserListInfo, définissez date_specific_rule_user_list avec un DateSpecificRuleUserListInfo. Cet objet contiendra des champs pour start_date et end_date.

DateSpecificRuleUserListInfo dateSpecificRuleUserListInfo =
    DateSpecificRuleUserListInfo.newBuilder()
        .setRule(
            UserListRuleInfo.newBuilder()
                .addAllRuleItemGroups(
                    ImmutableList.of(checkoutAndCartSizeRuleGroup, checkoutDateRuleGroup)))
        .setStartDate(StringValue.of("2019-10-01"))
        .setEndDate(StringValue.of("2019-12-31"))
        .build();

La nouvelle liste contient tous les utilisateurs qui répondent aux mêmes règles que la précédente mais uniquement s'ils visitent votre site entre le start_date (inclus) et end_date (inclus).

Inclure les anciens utilisateurs dans la liste

Vous pouvez également inclure d'anciens utilisateurs dans une liste d'utilisateurs basée sur des règles en définissant prepopulation_status de la liste d'utilisateurs à REQUESTED, et surveiller l'avancement du processus de préremplissage asynchrone en vérifiant régulièrement l'état de ce champ.

Seuls les utilisateurs des 30 derniers jours seront ajoutés, en fonction la durée de validité de l'inscription de la liste et la date à laquelle la balise de remarketing est ajoutée. La état sera passé à FINISHED une fois la demande traitée, ou FAILED si la requête échoue.