У цій статті ми описуємо GraphQl запити для отримання необхідних даних правил автоматично пов’язаних продуктів для прогресивної веб-програми (PWA). Щоб реалізувати резолвер GraphQL, вам потрібно встановити Magento 2 Automatic Related Products Extra.
Крім того, ви можете легко перевірити ці запити за допомогою розширення ChromeiQL для браузера Chrome.
Запит GraphQL для правила пов’язаних продуктів
За допомогою цього запиту ви отримаєте всі пов’язані продукти через ідентифікатор правила (продукти, які підпадають під умови правила).
Запит:
query mfAutoRelatedProducts ($ruleId: Int $productId: Int $categoryId: Int $pageSize: Int $currentPage: Int) {
mfAutoRelatedProducts(
ruleId: $ruleId
productId: $productId
categoryId: $categoryId
pageSize: $pageSize
currentPage: $currentPage
){
total_count
items{
products{
id
name
sku
}
category_ids{
category_id
}
customer_group_ids{
group_id
}
store_ids{
store_id
}
id
name
description
status
priority
block_position
merge_type
from_one_category_only
only_with_higher_price
only_with_lower_price
conditions_serialized
actions_serialized
block_title
sort_by
display_add_to_cart
number_of_products
display_out_of_stock
who_bought_this_also_bought
who_viewed_this_also_viewed
start_date
finish_date
same_as_conditions_serialized
click_count
crt_rate
apply_same_as_condition
}
}
}
Змінні:
{
"ruleId": 1,
"pageSize": 5,
"currentPage": 1
}
Результат:
В результаті ви отримаєте дані про перші 5 продуктів на першій сторінці.
![]()
Запит GraphQL продукту та категорії
За допомогою цього запиту ви зможете використовувати продукт і категорію, щоб побачити, під які правила вони підпадають.
Запит:
query mfAutoRelatedProducts ($ruleId: Int $pageSize: Int $currentPage: Int) {
mfAutoRelatedProducts(
ruleId: $ruleId
pageSize: $pageSize
currentPage: $currentPage
){
total_count
items{
products{
id
name
sku
}
category_ids{
category_id
}
customer_group_ids{
group_id
}
store_ids{
store_id
}
id
name
description
status
priority
block_position
merge_type
from_one_category_only
only_with_higher_price
only_with_lower_price
conditions_serialized
actions_serialized
block_title
sort_by
display_add_to_cart
number_of_products
display_out_of_stock
who_bought_this_also_bought
who_viewed_this_also_viewed
start_date
finish_date
same_as_conditions_serialized
click_count
crt_rate
apply_same_as_condition
}
}
}
Змінні:
{
"ruleId": 1,
"productId": 1,
"categoryId": 1,
"pageSize": 5,
"currentPage": 1
}
Результат:
У результаті ви отримаєте дані про те, під які правила підпадають поточні продукти та категорії.
![]()