Задавайте вопросы по курсам WordPress

Сортування товарів WooCommerce, нема в наявності ставимо в кінець переліку товарів

Нещодавно отримав аудит від клієнта і в ньому було одне цікаве завдання, яке часто впроваджують в інтернет магазини для зручності відвідувачів “Сортування товарів WooCommerce, не в наявності ставимо в кінець переліку товарів”.

Перше що я зробив пошук як вирішити завдання засобами WooCommerce, але так і не знайшов. Стандартно плагін магазину пропонував виключати товари зі списку в категорії і якщо в категорії більше не було товарів у наявності вона пропадала б з меню, при цьому посилання на товари залишалися б активними. Ідея звичайно хороша, і для пошуку нормально, але те, що категорія пропадатиме або залишатиметься порожньою це не добре. І тут я приступив googl-ити.

Покопавшись трохи, я знайшов 2 рішення про які і розповім нижче. Яким скористатися вибирати вам!

Сортування товарів WooCommerce за допомогою add_action( ‘pre_get_posts’, … )

За допомогою екшену та функції ми отримуємо запит, який буде направлений у базу даних, якщо запит отримано успішно, то видозмінюємо його за допомогою . $query-> set( ‘meta_key’, ‘_stock_status’ ) і $query-> set(‘meta_key’, ‘_stock_status’). Ці 2 прості рядки означають людською мовою таке. Сортувати отримані дані по полю _stock_status в алфавітному порядку якщо 2 товару будуть однієї дати, то новий товар став першим. Код цього екшену потрібно додавати до файлу functions.php

add_action( 'pre_get_posts', 'mik_exclude_category' );
function mik_exclude_category( $query ) {
    if ( $query->is_main_query() ) {

    	$query->set( 'meta_key', '_stock_status' );
        $query->set( 'orderby', array('meta_value' => 'ASC', 'date' => 'DESC') );

    }
}

Код вийшов простий та працюючий Цю дію можна зробити також за допомогою плагіна WooCommerce Extra Product Sorting Options.

Сортування товарів за наявності за допомогою плагіна WooCommerce Extra Product Sorting Options

Є відмінний плагін для сортування товарів WooCommerce Extra Product Sorting Options , в якому через адмінку WordPress можна вибрати способи сортування, а потім у налаштуваннях WooCommerce вибрати за умовчанням сортування за наявності товарів. Зробити це можна через меню на панелі адміністратора WooCommerce –> налаштування –> вкладка Товари –> Відображення> пункт Сортування продуктів за замовчуванням та Add Product Sorting . Також за допомогою плагіна ви можете додати кілька нових варіантів сортування на фільтр.

Плагін працює англійською мовою і для його перекладу доведеться використовувати програму Poedit або плагін Loco Translate . Перед початком перекладу не забувайте робити копію файлів сайту. Вдалої роботи над зручними інтернет-магазинами, яких люблять пошукові системи.


Купить хостинг WordPress
/* Репетитор по wordpress
Услуги репетитора онлайн. Список курсов которые я веду
  • Базовый курс по веб-дизайну;
  • Верстка сайтов;
  • Общий курс по CMS WordPress и продолжение курса по разработке шаблонов;
  • Разработка сайтов на PHP.
Подробнее читайте на странице репетитор по WordPress
*/

Николаенко Максим

Директор веб-студии ProGrafika. Занимаюсь разработкой, дизайном и продвижением веб-сайтов. Всегда рад новым читателям блога и хорошим клиентам.


You may also like...

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься.

Цей сайт використовує Akismet для зменшення спаму. Дізнайтеся, як обробляються ваші дані коментарів.

Шаблоны для WordPress
Самый лучший хостинг в Украине
Стабильный хостинг для Drupal