Nutzerliste erstellen

Für expression_rule_user_list ist eine weitere Unterscheidung erforderlich. In Google Ads werden alle Regelelemente in einer entsprechenden Gruppe standardmäßig nach dem AND-Prinzip kombiniert. Das bedeutet, dass jedes Regelelement in mindestens einer Regelelementgruppe übereinstimmen muss, damit der Liste durch die Regel ein Besucher hinzugefügt wird. Dies wird als disjunktive Normalform oder OR_OF_ANDS bezeichnet.

Sie könnten die Liste stattdessen auch so einrichten, dass ein Besucher nur dann hinzugefügt wird, wenn mindestens ein Regelelement in jeder Regelelementgruppe übereinstimmt. Dies wird als konjunktive Normalform oder AND_OF_ORS bezeichnet und ist für expression_rule_user_list im Feld rule_type verfügbar. Wenn Sie versuchen, AND_OF_ORS für date_specific_rule_user_list zu verwenden, wird ein Fehler ausgegeben.

Jetzt müssen nur noch die Regelelementgruppen von oben in einer neuen Nutzerliste kombiniert werden: In diesem Fall behalten wir die Standardfunktionalität OR_OF_ANDS bei, da wir dafür diese Regeln erstellt haben.

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

Beschränkung auf den Zeitraum

Das expression_rule_user_list oben erfüllt Ihre Anforderungen. Aber was ist, wenn Sie nur Nutzer erfassen möchten, die die Regel in dieser Liste erfüllen und Ihre Website zwischen dem 1. Oktober und dem 31. Dezember besuchen? Verwenden Sie date_specific_rule_user_list.

Ein date_specific_rule_user_list wird genauso erstellt wie ein expression_rule_user_list. Anstatt das Feld expression_rule_user_list des RuleBasedUserListInfo-Objekts festzulegen, legen Sie das Feld date_specific_rule_user_list mit einem DateSpecificRuleUserListInfo-Objekt fest. Dieses Objekt enthält Felder für start_date und 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();

Die neue Liste enthält alle Nutzer, die die gleichen Regeln wie die vorherige Liste erfüllen, aber nur, wenn sie Ihre Website zwischen start_date (einschließlich) und end_date (einschließlich) besuchen.

Frühere Nutzer in die Liste einschließen

Sie können auch frühere Nutzer in eine regelbasierte Nutzerliste aufnehmen. Dazu setzen Sie prepopulation_status der Nutzerliste auf REQUESTED und überwachen den Fortschritt des asynchronen Vorausfüllvorgangs, indem Sie regelmäßig den Status dieses Felds überprüfen.

Dabei werden nur Nutzer der letzten 30 Tage hinzugefügt. Dies ist abhängig von der Gültigkeitsdauer der Liste und dem Datum, an dem das Remarketing-Tag hinzugefügt wurde. Der Status wird auf FINISHED aktualisiert, sobald die Anfrage verarbeitet wurde, oder auf FAILED, wenn die Anfrage fehlschlägt.