Удалить сайдбар со страницы товара (WP 5.0.2 + Storefront)
-
Здравствуйте! Нужно удалить сайдбар из шаблона карточки товаров.
Из шаблона страниц, записей и пр. удалила без проблем (убрала do_action( ‘woocommerce_sidebar’ ) и установив <div class=»block»>).Чтобы удалить сайдбар из карточек товаров, удаляю do_action( ‘woocommerce_sidebar’ ) из wp-content/plugins/woocommerce/templates/single-product.php, но сайдбар остаётся на месте.
Подскажите, пожалуйста! Заранее благодарю!
- Тема изменена 5 лет, 11 месяцев назад пользователем Yui. Причина: в раздел woocommerce
Страница, с которой нужна помощь: [войдите, чтобы увидеть ссылку]
-
удаляю do_action( ‘woocommerce_sidebar’ ) из wp-content/plugins/woocommerce/templates/single-product.php,
Никогда не трогайте плагины!
Все изменения делаются в шаблонах темы (дочерней, чтобы не потерять изменения)Спасибо, учту на будущее. На всякий случай всегда делаю копию перед внесением изменений.
Остальные удаления сайдбара делала в теме. Но каких-либо признаков редактирования шаблона именно карточки товара в ней не могу найти. И по логике вещей, шаблон карточки товара принадлежит именно плагину Woocommerce, а не теме.
Думаю, если шаблон карточки товара принадлежит плагину, то выключить сайдбар в карточке товара можно через функции темы Storefront. Но я, к сожалению, ни капли не программист и не могу это написать.
- Ответ изменён 5 лет, 11 месяцев назад пользователем mvlepina.
Сделал только что. вот примерно что вышло. Самый простой способ для вас будет. Это зайти в шаблон товара. и в самом шаблоне сделать так. Не знаю, как это сделать более правильно, так как woocommerce только учу. но знаю, что так работать будет.
<style> .left-sidebar .widget-area { display: none; } .content-area { width: 100% !important; } </style>
Спасибо! Но… так оно не работает) выдает ошибку и валит сайт 🙁
Но я думаю, такой способ будет работать не в шаблоне, а в доп.стилях css:
https://prnt.sc/m3iy6yВот только как его прописать, чтобы выключать сайдбар именно в шаблоне товара, а не по всему сайту?
Возможно, действительно допустила ошибку, т.к. абсолютно далека от программирования.
Вставляла в single-product.php
<?php
Ваш код
?>
- Ответ изменён 5 лет, 11 месяцев назад пользователем Yui. Причина: контакты на форуме оставлять не нужно
не нужно стили вставлять в php код. Стили вставляются в саму структуру верстки.
например вот так<style> .left-sidebar .widget-area { display: none; } .content-area { width: 100% !important; } </style> <div class="content"> <h2>Hey There!</h2> <p>A wonderful serenity has taken possession of my entire soul, like these sweet mornings of spring which I enjoy with my whole heart.</p> <a href="#" class="info">Read More</a> </div>
Попробуйте. если не выйдет.
- Ответ изменён 5 лет, 11 месяцев назад пользователем Yui. Причина: п 16
Встретились два одиночества…..
Надеюсь вы понимаете, что все эти ваши правки ровно до первого обновления?Тут ведь форум — вопрос ответ, а не давайте пообщаемся) Я предложил человеку решение его проблемы тем способом, что знаю я, если у вас есть более правильный вариант, пожалуйста, выкладывайте.
PS обновления… Я их отключаю 😀Если хотите, оставьте мне ваши контакты, я могу зайти и сделать вам
@virusook , не нарушайте правил форумов wordpress.org пожалуйста, контакты/информацию для входа на сайт, в панели хостинга итп итд оставлять и спрашивать нельзя
PS обновления… Я их отключаю
и не надо рекомендовать другим «пить из лужицы» тоже
PS обновления… Я их отключаю 😀
Ну не надо учить других плохому
если у вас есть более правильный вариант
1. Подобрать тему, которая полностью удовлетворяет вашим запросом по верстки и кастомизации.
2. Скопировать нужный шаблон в дочернюю тему (причем в самом файле прям так буржуйским по белому и написаноOverride this template by copying it to yourtheme/woocommerce/single-product.php
) и там над ним изгаляться
3. С помощью css подогнать под нужную верстку. НО не в файле шаблона, а в доп. стилях или style.css дочерней темы. Пример:body.single-product .widget-area { display: none; } body.single-product .content-area { width: 100% !important; }
где
body.single-product
какраз и отвечает что правило будет применяться только в карточке товара.а в доп. стилях
На всякий случай дополню, что это в разделе Внешний вид -> Настроить -> Дополнительные стили.
@tuxfighter большое спасибо за исчёрпывающий ответ! Это как раз то, что мне было нужно.
Понимала, что требуются эти 2 действия, но писать css сама не умею.
@denisco спасибо за дополнение, об этом знаю.ну вообще то там три разных пути для достижения одного и того же.
@tuxfighter могу попробовать предположить, что 2 и 3 — через правку шаблона и через функции.
но скрыть сайдбар / растянуть содержимое через css, по вашему совету, для меня точно проще 🙂
- Тема «Удалить сайдбар со страницы товара (WP 5.0.2 + Storefront)» закрыта для новых ответов.