إنشاء قائمة المستخدمين

وبالنسبة إلى expression_rule_user_list، يجب تقديم أفضل أداء. ستجمع "إعلانات Google" تلقائيًا 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::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 => []});
      

الحدّ المسموح به حسب النطاق الزمني لزيارة الموقع الإلكتروني

تلبّي الإجراءات expression_rule_user_list الواردة أعلاه احتياجاتك، ولكن ماذا لو كنت تريد فقط جذب المستخدمين الذين يستوفون القاعدة الواردة في تلك القائمة وزاروا موقعك الإلكتروني في الفترة بين 1 تشرين الأول (أكتوبر) و31 كانون الأول (ديسمبر)؟ استخدِم date_specific_rule_user_list.

يتّبع إنشاء date_specific_rule_user_list العملية نفسها التي تتّبعها في expression_rule_user_list. وبدلاً من ضبط الحقل expression_rule_user_list في العنصر RuleBasedUserListInfo، يمكنك ضبط الحقل date_specific_rule_user_list باستخدام عنصر DateSpecificRuleUserListInfo. سيحتوي هذا العنصر على حقلَي start_date و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();

ستتضمّن القائمة الجديدة جميع المستخدمين الذين يستوفون القواعد نفسها الواردة في القائمة السابقة، ولكن فقط إذا زاروا موقعك الإلكتروني خلال الفترة من start_date (شاملة) إلى end_date (شاملة).

إدراج المستخدمين السابقين في القائمة

يمكنك أيضًا تضمين المستخدمين السابقين في قائمة مستخدمين مستنِدة إلى قواعد عن طريق ضبط prepopulation_status لقائمة المستخدمين على REQUESTED، ومراقبة مستوى تقدّم عملية التعبئة التلقائية غير المتزامنة من خلال التحقّق بشكل دوري من حالة هذا الحقل.

وسيؤدي ذلك إلى إضافة المستخدمين السابقين خلال آخر 30 يومًا فقط، استنادًا إلى مدة عضوية القائمة وتاريخ إضافة علامة تجديد النشاط التسويقي. سيتم تعديل الحالة إلى FINISHED بعد معالجة الطلب، أو FAILED في حال تعذُّر معالجة الطلب.