Сортировка товаров woocommerce не работает

Не работает сортировка по цене woocommerce

Проблема:

Работая над одним из интернет магазинов, который работает на плагине woocommerce, обнаружил такую проблему: сортировка по цене работает не правильно. Когда мы выбираем сортировку «по цене (по убыванию)», то логично было бы увидеть вверху самый дорогой товар, а внизу самый дешевый, но сортировка показывает сначала самый дешевый товар, а в конце самый дорогой. Тоже самое происходит и с другим способом сортировки «по цене (по возрастанию)», только наоборот.

Причина:

Проблема заключается в неправильном переводе, или я бы сказал, понимании значения слов. По сути сортировка работает правильно если учесть, что в коде написано low to high, что в переводе означает «от низкого к высокому», но в переводе на русский мы видим слова «по убыванию», поэтому сортировка по цене работает не правильно.

Решение:

Для того, что у нас все работало правильно, нам необходимо внести некоторые изменение в коде плагина, а точнее в файле orderby.php, который находится по адресу wp-content /plugins/ woocommerce/ templates/ loop/ orderby.php. Находим и открываем его. Вы можете сделать это через ftp клиент или если же ваш хостинг-провайдер позволяет редактировать файл через панель управления, то можно изменять файл напрямую.

Читайте также:  Не работают горячие клавиши смены языка

Итак, в файле orderby.php находим строки:

нас интересуют команды «low to hight» и «high to low», нам необходимо поменять их местами так, как показано ниже:

Теперь осталось только сохранить и радоваться.

Источник

Не работает сортировка WooCommerce?

На главной странице вывожу товары только с акцией, добавляя такой код:

Именно на этой, главной странице и не работает сортировка. Разные способы пробовал. Путем проб выяснил, что причина в:
query_posts( $args );

Прописывал в параметрах ‘orderby’ и т. д. Пока ничего не помогло.

Кто сталкивался с такой проблемой, или может быть знает другой способ вывода акционных товаров, подскажите решение, пожалуйста.

  • Вопрос задан более трёх лет назад
  • 2205 просмотров

Судя по всему цикл не срабатывает потому что функция is_shop() проверяет является ли данная страница страницей магазина или нет. Скорей всего у Вас в настройках указана другая страница (не главная).
и ещё момент эстетики)) не нужно делать слияние массивов в атрибуте post__in. Сделайте проще ‘post__in’ => array( $products_on_sale )

А ещё можно просто использовать шорткод

Проблема заключается в неправильном переводе, или я бы сказал, понимании значения слов. По сути сортировка работает правильно если учесть, что в коде написано low to high, что в переводе означает «от низкого к высокому», но в переводе на русский мы видим слова «по убыванию», поэтому сортировка по цене работает не правильно.

Источник

Как настроить сортировку товаров в категории магазина woocommerce (каталоге)

Общие настройки сортировки товаров в магазине на WooCommerce настраиваются по умолчанию так: по рейтингу, популярности, цене и прочим полям… а также возможно добавить свой вариант сортировки (это несложно — ссылка на инструкцию по тексту ниже). И если бы ни наши требования и видения в отношении функционала магазина, всё бы было Замечательно!

Однако, все магазины разные, разная специфика реализации, представления (предоставления) товаров и т.п и т.д.

Вся беда для админов магазинов заключается в том, что данные по умолчанию варианты сортировки товаров частенько по мере развития магазина не устраивают: функционал сортировки wooc хочется кастомезировать под свои требования.

woocommerce — сортируем товары в категории магазина на наше усмотрение:

Опции настройки сортировки в каталогах магазина описаны в этом посте.

настройки сортировки товаров в категории магазина (каталогах) woocommerce

Если вас не устраивают опции стандартных настроек сортировки на странице отдельных товаров, и вы желаете каких-то своих настроек последовательности расположения ссылок товаров, то эти чаяния возможно осуществить. Поля реализации огромны!

К примеру, вы выводите товары по популярности (на основе рейтинга /отзывов/) а популярные товары, как правило, наиболее дешёвые… Однако, этот вариант вас не устраивает — вы видите популярность в иных измерениях. Как поступить в этом случае!?

Как говорит моя практика, многие админы не уделяют должного времени на изучение настроек магазина! и не знают элементарного, обращаются за помощью… Приходится помогать (и пояснять), что самым доступным способом сортировки отдельных товаров, то есть размещение их на витрине магазина в нужной нам последовательности, является банальнейшее перетаскивание title требуемых товаров, размещая из таким образом в нужной нам последовательности.

Для реализации идеи переходим по такому пути:

в плане полезного чтива :

Наиболее полная подборка, пояснения Условные теги woocommerce…

Подборка полезного кода (сниппеты) для работы магазина на WooCommerce…

Настройка, использование и удаление виджетов WooCommerce из админки.

Как отключить проверку уровня сложности пароля woocommerce (форма регистрации).

Отключаем подгрузку стилей, скрипов для страниц, не относящихся к Wooсommerce

сортировка товаров путём перетаскивания прямо в консоли настроек Товаров Wooc

Итак: в консоли управления сайтом, в левом вертикальном меню, переходим Товары/Все товары..

затем выбираем нужную категорию для редактирования товаров и переключаемся на вкладку «Сортировка».

Перетаскиванием товары в нужной последовательности… то есть которые покупатели должны видеть первыми в списке.

В этом случае сортировки важно понимать следующий казус : посетители могут отсортировать товары на свое усмотрение (скрин ниже).

Однако, блок выпадающего списка сортировки товаров возможно со страницы убрать — несколько вариантов!

Помимо прочего, непременно нужно изучить шорткоды wooc и, при случае, пользоваться ими: как работать с шорткодами описано в ЭТОМ тексте.

Выводить товары на тех или иных страницах магазина возможно при помощи шорткодов, а также настраивать сортировку в той, либо иной последовательности относительно друг друга.

Также можно настроить сортировку товаров в отдельной категории (если вы привыкли работать с кодом) по какому-то произвольному полю, к примеру артикулу и пр:

$args[ ‘meta_key’ ] = ‘_sku’; // имя

Однако, этой большой кодовой теме посвящена отдельная статья и сейчас её касаться не будем. Для тех товарищей по партии, которых интересуют подробности темы сортровки woocommerce, непременно используя код, обязательно прочтите в блоге следующую тему рубрики WooCommerce и WordPress — в инструкции рассказано каким образом создать отдельную страницу для кастомных настроек магазина.

Условные теги: пример страницы пагинации — закрываем в noindex,follow

Михаил ATs — владелец блога запросто с Вордпресс — в сети нтернет давным-давно.

. веб разработчик студии ATs media: помогу в создании, раскрутке, развитии и целенаправленном сопровождении твоего ресурса в сети. — заказы, вопросы. разработка.

Источник

Порядок WooCommerce по цене не работает правильно

При выборе варианта сортировки по цене (выпадающий список Woocommerce) товары сортируются по цене, но она не работает точно; первые 6 отсортированы:

Кто-нибудь знает, что происходит и как это исправить? Ура !

5 ответов

Вам нужно использовать meta_value_num , когда вы упорядочиваете по числовым метаданным, в противном случае он будет сравниваться как строки, иначе мета-значения post хранятся в базе данных как строки.

Если заказ по цене не работает правильно в WooCommerce, безопасное решение всегда заключается в настройке того, как WooCommerce обрабатывает заказ по цене. Это работает, потому что WooCommerce price и price-desc являются вариантами упорядочивания по умолчанию. (Протестировано со стандартной темой в WordPress v5.4.1 и WooCommerce v4.1.0):

В вашем functions.php добавьте:

Как упомянуто @Pelmered, важно использовать meta_value_num в качестве опции ‘order_by’, чтобы упорядочение осуществлялось по числовым значениям, а не по строковым значениям. Я изменил meta_key на ‘_price’, потому что это требуется в версии WooCommerce, используемой и упомянутой выше.

Вам следует обновить плагин Woocommerce до последней версии. Это была ошибка в плагине, или вы, вероятно, что-то изменили в основных функциях.

Обновление помогло мне хорошо с этим и несколькими другими проблемами.

Кажется, что улаживает правильно. Смотрите рекомендуемые продукты, так как они имеют приоритет.

Для тех, кто может столкнуться с этой проблемой

Если вы импортировали свои продукты с помощью таких инструментов, как «WP All Import», вам придется заново создать «Таблицы поиска продуктов» в:

WooCommerce> Статус> Инструменты> Таблицы соответствия товара

Источник

Как сделать произвольную сортировку товаров в WooCommerce — опции сортировки WooC

Нередки ситуации, когда перед администратором магазина возникает задача по настройкам сортировки товаров в каталоге woocommerce. Иногда требуются нестандартные решения! Например, произвольная сортировка… Все эти задачи возможно и нужно решать!

Варианты решений, в общем-то, простые, — однако, об этих решениях нужно узнать, к тому же, во всём есть кое-какие нюансы, о которых нужно знать прежде, чем выбирать способы и варианты решений, так как и варианты реализации сортировки имеют свои нюансы.

В статье рассмотрим подробнейшим образом — и по шагам — вопросы по типам настроек сортировки товаров в каталоге магазина. Узнаем об опциях сортировки.

Но давайте с примерами и по порядку:

возможные опции сортировки товаров в WooCommerce — по умолчанию

Настройки опций WooC в шаблоне расположены здесь: Внешний вид/Настройки/woocommerce/…

Выпадающий список настроек сортировки товаров в каталоге магазина выглядит примерно так (к выбору сортировки имеют доступ все пользователи — если не настроены некие условия woocommerce по ролям /условные теги woocommerce/):

Как видите, возможности вариантов сортировки по умолчанию такие:

  • По популярности,
  • Сортировка по более позднему,
  • По новизне,
  • Цены: по возрастанию,
  • Цена: по убыванию.

woocommerce_catalog_orderby — хук

Настроить сортировку возможно при помощи хука woос:

woocommerce_catalog_orderby — хук/фильтр. от WC 1.0

Функции сортировки в плагине woocommerce ищем по такому пути: woocommerce/includes/wc-template-functions.php

Работа с хуком позволит изменить варианты сортировки товаров на страницах (в каталогах) магазина.

Пример использования фильтра таков:

$array — массив; обязательный…

Массив вариантов сортировки по умолчанию:

Можно исключать, либо добавлять свои варианты для выпадающего списка (подробнее ниже).

полезно почитать по настройкам магазина на Вукомерц :

Добавляем краткое описание (Description) к товару…
Подборка полезного кода (сниппеты) для работы магазина на WooCommerce…
Woocommerce шорткоды и их применение…
Настройка, использование и удаление виджетов WooCommerce из админки.
Как отключить проверку уровня сложности пароля woocommerce (форма регистрации).
Отключаем подгрузку стилей, скрипов для страниц, не относящихся к Wooсommerce

как удалить блок выпадающего списка для выбора сортировки категорий товаров

Следует иметь в виду, что удалить разом все варианты сортировки возможно в настройках шаблона «Убрать выпадающий список сортировки» (некоторые шаблоны имеют такую настройку).

1 — вариант (если этот список необходим в исходном коде шаблона, например, типа для микроразметки) то это делается средствами css примерно таким образом.

Источник

Оцените статью