• Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!
  • Темы озаглавленные с маленькой буквы или капсом удаляются без предупреждения!

Удаление сайдбара со страницы магазина

Image CMS

YaSerg

Опытный
#1
Версия WC: 2.1.11
Версия WP: 3.9.1
Тема Wootique 1.6.8
Имеется стандартный файл страницы магазина woocommerce/archive-product.php

Что бы удалить сайд бар я удаляю две строки снизу и сверху кода
do_action( 'woocommerce_before_main_content' );
do_action( 'woocommerce_after_main_content' );

Как я понял из документации эти строки грузят wrapper-start.php и wrapper-end.php (где лежит сама функция разыскать не могу.

Поэтому корректирую вручную добавляя в начало
<div id="content" class="page col-full" style="background: none !important;">
<div id="main" class="fullwidth">

И соответсвенно в конец два закрывающих div'a
</div></div>

Таким образом цель убрать сайдбар достигнута, но случается незадача пропадает список страниц (1, 2, 3) внизу списка (цикла) товаров, а так же "хлебные крошки" ввеху обложки (что совершенно не критично).

Из чего можно сделать вывод что функции
do_action( 'woocommerce_before_main_content' ); и do_action( 'woocommerce_after_main_content' ); грузят немного больше чем wrapper-start.php и wrapper-end.php.
 

rikitiki

Специалист
Местный
#4
У вас в page.php (страница) и single.php (запись) есть
<!—?php get_sidebar(); ?—>
Убираете и не будет у вас никаких сайдбаров.
Просто для наличия больших возможностей лучше создать дополнительные индивидуальные шаблоны.
 

YaSerg

Опытный
#5
У вас в page.php (страница) и single.php (запись) есть
<!—?php get_sidebar(); ?—>
Убираете и не будет у вас никаких сайдбаров.
Просто для наличия больших возможностей лучше создать дополнительные индивидуальные шаблоны.
Ну сделал по вашему, ничего не поменялось, вопросы те же.
 

ADv

Гуру
Местный
#6
Ну сделал по вашему, ничего не поменялось, вопросы те же.
Потому как это применимо к блогу и страницам, а не к магазину.
В стандартном template woocommerce достаточно вытереть
Код:
    <?php
        /**
         * woocommerce_sidebar hook
         *
         * @hooked woocommerce_get_sidebar - 10
         */
        do_action('woocommerce_sidebar');
    ?>
в archive-product.php

Еще вариант:

Код:
/**
* WooCommerce
*
* Unhook sidebar
*/
remove_action( 'woocommerce_sidebar', 'woocommerce_get_sidebar', 10);
в functions.php

Еще вариант:
Код:
.woocommerce #sidebar{display:none}
При необходимости
Код:
#content-woocommerce {
width: 100%;
}
 
Последнее редактирование:

YaSerg

Опытный
#7
Потому как это применимо к блогу и страницам, а не к магазину.
В стандартном template woocommerce достаточно вытереть
Код:
    <?php
        /**
         * woocommerce_sidebar hook
         *
         * @hooked woocommerce_get_sidebar - 10
         */
        do_action('woocommerce_sidebar');
    ?>
в archive-product.php

Еще вариант:

Код:
/**
* WooCommerce
*
* Unhook sidebar
*/
remove_action( 'woocommerce_sidebar', 'woocommerce_get_sidebar', 10);
в functions.php

Еще вариант:
Код:
.woocommerce #sidebar{display:none}
При необходимости
Код:
#content-woocommerce {
width: 100%;
}
Дружище, это обсуждали не раз как нерабочий вариант на теме Wootique, в первом посте это указано.
 

rikitiki

Специалист
Местный
#10
А как убрать сайдбар только в карточках товаров не затрагивая категории(витрины)? Что следует прописать в functions,php темы?
 

rikitiki

Специалист
Местный
#11
Актуально! Тестовый магазин http://nina.besaba.com/shop/ с шестью (!) фиксированными по ширине колонками в витринах и одним сайдбаром слева, если смотреть на широкоформатном мониторе с шириной более 1400px. Весьма эффектно смотрится на таких мониторах, которые нынче в подавляющем большинстве у пользователей. На квадратных экранах колонок 5 и ниже. Максимальная ширина темы 1400px.
Однако колонка контента на остальных страницах получается сильно растянутой - 1150px по ширине. На других страницах она такой широкой не нужна и смотрится плохо.
Единственный выход - сделать два сайдбара по бокам от контента (тема позволяет это), оставив один слева только для витрин. Иначе шести колонок в витринах не получится. Если принять ширину сайдбаров по 250px то 1400px=250+900+250. Максимальная ширина 900px для контента приемлема.
Пояснение - сайдбары фиксированы по ширине, ширина контента плавающая. По мере уменьшения ширины экрана сначала уходит вниз правый сайдбар, а затем левый.
Но как убрать один сайдбар справа, тот что в витринах, оставив два для остальных страниц? Вот в чём вопрос?
 

ADv

Гуру
Местный
#12
Актуально! Тестовый магазин http://nina.besaba.com/shop/ с шестью (!) фиксированными по ширине колонками в витринах и одним сайдбаром слева, если смотреть на широкоформатном мониторе с шириной более 1400px. Весьма эффектно смотрится на таких мониторах, которые нынче в подавляющем большинстве у пользователей. На квадратных экранах колонок 5 и ниже. Максимальная ширина темы 1400px.
Однако колонка контента на остальных страницах получается сильно растянутой - 1150px по ширине. На других страницах она такой широкой не нужна и смотрится плохо.
Единственный выход - сделать два сайдбара по бокам от контента (тема позволяет это), оставив один слева только для витрин. Иначе шести колонок в витринах не получится. Если принять ширину сайдбаров по 250px то 1400px=250+900+250. Максимальная ширина 900px для контента приемлема.
Пояснение - сайдбары фиксированы по ширине, ширина контента плавающая. По мере уменьшения ширины экрана сначала уходит вниз правый сайдбар, а затем левый.
Но как убрать один сайдбар справа, тот что в витринах, оставив два для остальных страниц? Вот в чём вопрос?
прописать условия его отображения? if is_page ....
 

rikitiki

Специалист
Местный
#13
Спасибо за помощь получилось
Прописал рекомендуемое вами условие и сайдбары в витринах исчезли, а в карточках ь и на остальных страницах остались
Однако удалились оба сайдбара, а мне нужно чтобы только один справа.
Да ещё по бокам пустые поля остаются от паддингов, которые в css создаются, чтобы туда сайдбары задвинуть.
 
Последнее редактирование:

rikitiki

Специалист
Местный
#14
Есть похожая под мои запросы широкоформатная платная тема:
http://sell.wpengine.com/product-category/women/
Но она тоже без левого сайдбара в витрине.
Если судить по http://mywordpress.ru/support/viewtopic.php?id=34461
ребята видимо тоже не осилили его вставку. :)
Тема похоже вообще без max-width и на широкоформатном мониторе блог смотрится дико:
http://sell.wpengine.com/uncategorized/standard-post-with-featured-image/
На мой взляд максимальная ширина 1400px для сайта оптимальна, так 1380px это ширина экрана дешёвого ноутбука.
--------
Сейчас пытаюсь создать третий сайдбар, с тем же наполнением виджетами, который бы маячил слева только в витрине.
 
Сверху Снизу