HUSKY - Products Filter Professional for WooCommerce

woof_products_ids_prediction

Документація для шорткоду HUSKY плагіна woof_products_ids_prediction - технічний довідник з прикладами коду

woof_products_ids_prediction

Шорткод [woof_products_ids_prediction] є спеціалізованою обгорткою навколо [woof_products], розробленою для прогнозування того, які ідентифікатори товарів відповідатимуть поточному стану фільтра. Він корисний для налаштувань, керованих AJAX, де вам потрібно знати відфільтрований набір товарів перед їх відображенням.

Як це працює

Внутрішньо цей шорткод викликає той самий метод woof_products() з прапором is_prediction, встановленим на true. Єдина відмінність у поведінці полягає в тому, що per_page за замовчуванням дорівнює 9999 у режимі прогнозування — це означає, що він повертає всі відповідні товари за замовчуванням, що корисно для отримання повного набору ідентифікаторів товарів.

Атрибути

Підтримує всі атрибути з [woof_products]:

АтрибутЗа замовчуваннямОпис
columnsЗа замовчуванням WooCommerceКількість колонок товарів
orderbynoПоле для сортування (no = використовувати налаштування WooCommerce, price, price-desc, date, title тощо)
ordernoПорядок сортування (ASC, DESC або no для замовчування)
page1Номер сторінки для пагінації
per_page9999*Товарів на сторінку. У режимі прогнозування за замовчуванням 9999 (всі товари). Використовуйте конкретне число, якщо вам потрібні результати з пагінацією.
is_ajax0Увімкнути режим AJAX (1 або 0)
taxonomies''Фільтрувати за таксономіями. Формат: product_cat:9,12+locations:30,31 (знак плюс розділяє різні таксономії)
sid''Ідентифікатор пошуку для визначення конкретних екземплярів фільтра
behavior''Особлива поведінка (наприклад, recent для нещодавніх товарів)
custom_tpl''Шлях до файлу користувацького шаблону (наприклад, wp-content/themes/my_theme/woo_tpl_1.php)
tpl_index''Індекс будь-якого розширення шаблону
predict_ids_and_continuefalseПрогнозувати ідентифікатори та продовжити з повним запитом товарів
get_args_onlyfalseКоли true, повертає лише аргументи WP_Query без виконання запиту
product_ids''Список конкретних ідентифікаторів товарів, розділених комами, для відображення
post__in''Список ідентифікаторів постів, розділених комами, для включення
display_on_search0Встановіть на 1, щоб показувати товари лише тоді, коли пошук/фільтр активний

* У режимі прогнозування (woof_products_ids_prediction) per_page за замовчуванням дорівнює 9999. У звичайному шорткоді [woof_products] він за замовчуванням дорівнює 0 (використовує налаштування плагіна).

Базове використання

[woof_products_ids_prediction]

Повертає всі ідентифікатори товарів, що відповідають поточному стану фільтра.

Використання з таксономіями

[woof_products_ids_prediction taxonomies="product_cat:15,17" orderby="price" order="ASC"]

Повертає ідентифікатори товарів у категоріях 15 та 17, відсортовані за ціною за зростанням.

Використання з AJAX

[woof_products_ids_prediction is_ajax="1" per_page="12" display_on_search="1"]

Показує товари в режимі AJAX, 12 на сторінку, лише коли фільтр активний. У режимі прогнозування це допомагає попередньо завантажити очікуваний набір результатів.

Отримання лише аргументів запиту

[woof_products_ids_prediction get_args_only="true"]

Повертає лише аргументи WP_Query як масив замість виконання запиту — корисно для розширених користувацьких інтеграцій, де ви хочете перевірити або змінити запит перед його запуском.

Інтеграція PHP / Hooks

Ви можете фільтрувати запит товарів, використовуючи стандартні хуки WooCommerce та HUSKY. Наприклад, щоб змінити аргументи запиту:

add_filter('woof_draw_products_get_args', function($args) {
    // Змінити аргументи запиту перед виконанням
    $args['post_type'] = array('product', 'product_variation');
    return $args;
});

Коли використовувати woof_products_ids_prediction проти [woof_products]

  • Використовуйте [woof_products], коли ви хочете відобразити товари з фільтрацією.
  • Використовуйте [woof_products_ids_prediction], коли вам потрібно прогнозувати, які товари відповідатимуть — наприклад, для попереднього завантаження даних про товари, оновлення лічильника або підготовки пов'язаних запитів перед відображенням.
  • Режим прогнозування за замовчуванням передбачає отримання всіх відповідних товарів (per_page=9999), що робить його ідеальним для отримання повного набору ідентифікаторів товарів.