Đối với expression_rule_user_list
, bạn cần phân biệt thêm. Theo mặc định, Google Ads sẽ AND
tất cả các mục quy tắc trong một nhóm mục quy tắc. Điều này có nghĩa là mọi mục quy tắc trong ít nhất một nhóm mục quy tắc phải khớp để quy tắc có thể thêm khách truy cập vào danh sách. Đây được gọi là "dạng chuẩn phân ly" hoặc OR_OF_ANDS
.
Ngoài ra, bạn có thể thiết lập danh sách để chỉ thêm khách truy cập vào danh sách nếu ít nhất một mục quy tắc trong mỗi nhóm mục quy tắc khớp. Đây được gọi là "biểu thức liên kết thông thường" hoặc AND_OF_ORS
và có sẵn cho expression_rule_user_list
bằng cách sử dụng trường rule_type
. Nếu cố gắng sử dụng AND_OF_ORS
cho date_specific_rule_user_list
, bạn sẽ gặp lỗi.
Việc còn lại là kết hợp các nhóm mục quy tắc ở trên vào một danh sách người dùng mới. Trong trường hợp này, chúng ta sẽ giữ nguyên chức năng OR_OF_ANDS
mặc định, vì đó là lý do chúng ta tạo ra các quy tắc này.
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();
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);
$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' => [] ]);
# 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)
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
my $flexible_rule_user_list_info = Google::Ads::GoogleAds::V19::Common::FlexibleRuleUserListInfo->new({ inclusiveRuleOperator => AND, inclusiveOperands => [ Google::Ads::GoogleAds::V19::Common::FlexibleRuleOperandInfo->new({ rule => Google::Ads::GoogleAds::V19::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 => []});
Thêm người dùng trước đây vào danh sách
Bạn cũng có thể đưa người dùng trước đây vào danh sách người dùng dựa trên quy tắc bằng cách đặt prepopulation_status
của danh sách người dùng thành REQUESTED
và theo dõi tiến trình của quy trình điền sẵn không đồng bộ bằng cách kiểm tra định kỳ trạng thái của trường này.
Thao tác này sẽ chỉ thêm những người dùng trước đây trong vòng 30 ngày qua, tuỳ thuộc vào thời hạn thành viên của danh sách và ngày thêm thẻ tái tiếp thị. Trạng thái sẽ được cập nhật thành FINISHED
sau khi yêu cầu được xử lý hoặc FAILED
nếu yêu cầu không thành công.