• ДОБРО ПОЖАЛОВАТЬ В КЛУБ ПО WORDPRESS

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

    Присоединяйтесь к нам, вам обязательно понравится - Присоединится

Решено Как изменить количество колонок товаров в Woocommerce

asis

МЕСТНЫЙ

asis

МЕСТНЫЙ
Сообщения
118
На главной странице магазина выводится товар в 3 колонки, а мне надо сделать в 4. Как собственно изменить количество колонок? Нашел такой код, но он что-то не сработал:

PHP:
function my_storefront_loop_columns() {
 if (is_shop()) { // главная страница магазина
 return 5; // 5 колонок
 } elseif (is_product_category()) { // страница категории товаров
 return 4; // 4 колонки
 } 
}
add_filter( 'storefront_loop_columns','my_storefront_loop_columns' );
 

Wildcdu

ЭКСПЕРТ

Wildcdu

ЭКСПЕРТ
Сообщения
1,120
На главной странице магазина выводится товар в 3 колонки, а мне надо сделать в 4. Как собственно изменить количество колонок? Нашел такой код, но он что-то не сработал:

PHP:
function my_storefront_loop_columns() {
 if (is_shop()) { // главная страница магазина
 return 5; // 5 колонок
 } elseif (is_product_category()) { // страница категории товаров
 return 4; // 4 колонки
 }
}
add_filter( 'storefront_loop_columns','my_storefront_loop_columns' );
Самый простой метод этот плагин Saphali Woocommerce Russian

Ну или где то у нас написано как ручками это делать. Я не помню где поищите.
 

asis

МЕСТНЫЙ

asis

МЕСТНЫЙ
Сообщения
118
Хотелось бы обойтись без плагина. Но вот я не смог найти тут решение на форуме.
 

Wildcdu

ЭКСПЕРТ

Wildcdu

ЭКСПЕРТ
Сообщения
1,120
Хотелось бы обойтись без плагина. Но вот я не смог найти тут решение на форуме.
Можно тут woocommerce/content-product_cat.php или тут content-product.php можно в functions.php в первом случае конкретно для каталога во втором глобально
Код:
add_filter('loop_shop_columns',function($col){
  return 3 ;
});
Забыл добавить думаю сами поняли но подстрахуюсь 3 - это количество колонок
 

Wildcdu

ЭКСПЕРТ

Wildcdu

ЭКСПЕРТ
Сообщения
1,120

Попай

АДМИНИСТРАТОР

Попай

АДМИНИСТРАТОР
Сообщения
3,247
Можно тут woocommerce/content-product_cat.php или тут content-product.php можно в functions.php в первом случае конкретно для каталога во втором глобально
Интересная тема. Меня тоже иногда спрашивают об этом. Решил попробовать на песочнице и ... что не поменялось количество колонок.
 

Wildcdu

ЭКСПЕРТ

Wildcdu

ЭКСПЕРТ
Сообщения
1,120
Интересная тема. Меня тоже иногда спрашивают об этом. Решил попробовать на песочнице и ... что не поменялось количество колонок.
))) я так понял что скорее всего вертят не там... начнем с того что ест основные файлы WC и дочерние... вот тут собака и порылась...
от создателей про дочернюю пишут так
Код:
// Change number or products per row to 3
add_filter('loop_shop_columns', 'loop_columns');
if (!function_exists('loop_columns')) {
    function loop_columns() {
        return 3; // 3 products per row
    }
}
Для тем с поддержкой WC пишут так
Код:
// Override theme default specification for product # per row
function loop_columns() {
return 5; // 5 products per row
}
add_filter('loop_shop_columns', 'loop_columns', 999);
Смотрите.

Сори забыл добавить что это в functions.php пишем
 
  • Нравится
Реакции: asis

Wildcdu

ЭКСПЕРТ

Wildcdu

ЭКСПЕРТ
Сообщения
1,120
Добавляю на всякий случай для понимания процесса. В одном случае пишем в глобальный functions.php и проверяем в другом в functions.php ТЕМЫ!!! Не забывайте что если тема с поддержкой WC то приоритет обрабатывается от темы!!!
 

Wildcdu

ЭКСПЕРТ

Wildcdu

ЭКСПЕРТ
Сообщения
1,120

ПавелМММ

НОВИЧОК

ПавелМММ

НОВИЧОК
Сообщения
2
Wildcdu, Все работает, спасибо. Вопрос можно считать решенным.
Добрый день!
у меня стоит тема wooBizness и woocommerce
Все вышеописанное пробовал, не помогло
Стоит какая-то функция blocks-3 на (скрине видно), если 3 меняю на 4, то колонок становится 4. Не могу найти где то прописано
 

Вложения

Попай

АДМИНИСТРАТОР

Попай

АДМИНИСТРАТОР
Сообщения
3,247
ПавелМММ, вам надо искать в шаблоне код отвечающий за вывод товаров связанный с blocks-3 и пробовать там менять цифры. У меня к сожалению нет сейчас возможности посмотреть этот шаблон.
 

ПавелМММ

НОВИЧОК

ПавелМММ

НОВИЧОК
Сообщения
2
ПавелМММ,
ПавелМММ, вам надо искать в шаблоне код отвечающий за вывод товаров связанный с blocks-3 и пробовать там менять цифры. У меня к сожалению нет сейчас возможности посмотреть этот шаблон.
В шаблоне я нашел файл kube.css, там прописано несколько типов: blocks-2, blocks-3,blocks-4....
(под тегом //Blocks). Так как схема адаптивная, то каждому "blocks" присвоена процентовка. поменял ее с 33% на 22% и все сработало.
Коряво, но зато сделал
 

Вложения

Попай

АДМИНИСТРАТОР

Попай

АДМИНИСТРАТОР
Сообщения
3,247
ПавелМММ, конечно это тоже вариант. Вы сделали через css, но правильнее найти где в коде выводится blocks-3 и заменить на blocks-4. Но а можно и не париться и забить, работает же. ;)
 

Ракс

ПРОВЕРЕННЫЙ

Ракс

ПРОВЕРЕННЫЙ
Сообщения
9
Ребята, помогите, такая же проблема, но выше указанные способы не работают.
Прописывал функцию и в functions.php темы, и в глобальной. Колонок становится вроде как 4, типа. Но отображаются они все равно по 3 и получается что они съезжают.

Нашел еще плагин WooCommerce Product Archive Customiser
Вроде как он тоже помогает настроить формат, но этих колонок все равно 3, а вместо четвертой пустое место. Замучался уже, где еше в этой теме рыть, чтобы их стало 4?
Тема InCart.
 

Вложения

Последнее редактирование модератором:

Ракс

ПРОВЕРЕННЫЙ

Ракс

ПРОВЕРЕННЫЙ
Сообщения
9
Добавляю на всякий случай для понимания процесса. В одном случае пишем в глобальный functions.php и проверяем в другом в functions.php ТЕМЫ!!! Не забывайте что если тема с поддержкой WC то приоритет обрабатывается от темы!!!
помоги, друже, ты вроде разбираешься в шаблонах.
 

Mvuser

СВОЙ МОДЕРАТОР

Mvuser

СВОЙ МОДЕРАТОР
Сообщения
2,349
Сайт тут рекламировать свой не надо. Wildcdu, на данный момент пропал.

А по теме у вас в шаблоне есть такие строки в CSS:
[CSS]@media (min-width: 1025px)
.woocommerce .woo-three-col ul.products li.product:nth-child(3n+1) {[/CSS]

Вот если поменять на 4n+1 и чуть подшаманить с CSS то должно всё получится.
 

Ракс

ПРОВЕРЕННЫЙ

Ракс

ПРОВЕРЕННЫЙ
Сообщения
9
Сайт тут рекламировать свой не надо. Wildcdu, на данный момент пропал.

А по теме у вас в шаблоне есть такие строки в CSS:
[CSS]@media (min-width: 1025px)
.woocommerce .woo-three-col ul.products li.product:nth-child(3n+1) {[/CSS]

Вот если поменять на 4n+1 и чуть подшаманить с CSS то должно всё получится.
Ооооо, дружище, спасибо! Помогло!

Сайт я не рекламировал, я вообще сомневаюсь что тут он кому-то может быть интересным, просто кинул ссылку на прямую проблему. Извини если что.
 

Попай

АДМИНИСТРАТОР

Попай

АДМИНИСТРАТОР
Сообщения
3,247

Ракс

ПРОВЕРЕННЫЙ

Ракс

ПРОВЕРЕННЫЙ
Сообщения
9
Сайт тут рекламировать свой не надо. Wildcdu, на данный момент пропал.

А по теме у вас в шаблоне есть такие строки в CSS:
[CSS]@media (min-width: 1025px)
.woocommerce .woo-three-col ul.products li.product:nth-child(3n+1) {[/CSS]

Вот если поменять на 4n+1 и чуть подшаманить с CSS то должно всё получится.
Черт, убрал один плагин, который Saphali Woocommerce Russian, решив, что раз проблема исправлена он не нужен.
В итоге все стало как было, 3 колонки. Вместе с плагином отображается 4, но криво.
 

Вложения

Сверху