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

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

YaSerg

Опытный
Версия 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.
 

YaSerg

Опытный
Хочется уже разобраться, что бы в будущем иметь больше возможностей.
 

rikitiki

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

YaSerg

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

Ну сделал по вашему, ничего не поменялось, вопросы те же.
 

ADv

Гуру
Местный
Ну сделал по вашему, ничего не поменялось, вопросы те же.
Потому как это применимо к блогу и страницам, а не к магазину.
В стандартном 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

Опытный
Потому как это применимо к блогу и страницам, а не к магазину.
В стандартном 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

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

rikitiki

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

ADv

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

rikitiki

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

rikitiki

Специалист
Местный
Есть похожая под мои запросы широкоформатная платная тема:
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 это ширина экрана дешёвого ноутбука.
--------
Сейчас пытаюсь создать третий сайдбар, с тем же наполнением виджетами, который бы маячил слева только в витрине.
 
Сверху Снизу