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

بالنسبة إلى 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::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 => []});
      

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

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 إذا فشل الطلب.