Здравствуйте читатели сайта.
Это интересно для тех, кто использует вордпресс + плагин woocommerce.
На одном из проектов была проблема в том, что на странице карточки товара выводится краткое описание (некоторые называют это мини описание) товара справа от картинки. Заказчику захотелось его удалить и добавить в таб описания.
Для начала нужно было удалить краткое описание и в поиске в интернете перечитал гору всего и находил единственное решение, которое все советовали, так это спрятать через style.css используя следующий код (думал найти быстро готовое решение):
.woocommerce-product-details__short-description{display:none;}
Но вот как-то для меня эта конструкция выглядела не очень. Еще один вариант, это скопировать файл отвечающий за вывод краткого описания из плагина в свою тему и отредактировать его — и этот вариант тоже не хотел использовать.
Поэтому я решил сделать по своему и добавил в functions.php своей темы (или дочерней можно) такой код:
<?php
function wplife_filter_woocommerce_short_description( $post_post_excerpt ) {
return "";
};
add_filter( 'woocommerce_short_description', 'wplife_filter_woocommerce_short_description', 10, 1 );
?>
Если кому интересно, как добавить уже краткое описание в таб описания товара, задайте вопрос в комментариях и я вам расскажу.
Также в комментариях можете высказать свое мнение по поводу выше приведенного решения.
Добавим нижний отступ для краткого описания. Для этого вставляем следующий код в Внешний вид — Настроить — Дополнительные стили. Чтобы вывести краткое описание товара только на странице категории достаточно добавить условный тег is_tax.
Николай, интересно. Еще если бы смогли привели примеры кода.
Для тех кому не понятно (особенно для новичков), приведу примеры
Для стилей
.woo-product-short-desc {
margin-bottom: 10px;
}
где указываем отступ в px, в примере он равен 10 (можно указывать в em).
Для вывода краткого описания код добавляем в файл functions.php нашей темы, например так
<?php
add_filter( 'woocommerce_after_shop_loop_item', 'my_show_product_description', 9 );
function my_show_product_description() {
if ( is_tax( 'product_cat' ) ) {
echo '<div class="woo-product-short-desc">' . get_the_excerpt() . '</div>';
}
}
?>
Хорошее решение но мне не помогло.
Нужно в карточке товара оставить краткое описание
а в каталоге товаров скрыть.
Как? Подскажите:?
Здравствуйте. Зависит от темы, если дадите название темы или ссылку. По тому сайту который Вы указали не увидел, что там выводится краткое описание в каталоге (возможно уже решили свой вопрос).
А можно попробовать вот так, самый простой вариант (но не лучший), в css файле (обычно style.css) добавить
где «класс» — ваш класс div в котором находится краткое описание
Можно попробовать и такой код (добавить в functions.php)
Интересно, вы ещё отвечаете в комментариях на вопросы? Попробовал ваши два варианта, с css и добавлением кода в файл функционс, ничего не помогает. Пару дней не буду редактировать, чтобы вы посмотрели как оно выглядит на сайте это малое описание в катигории товаров, портит всю красоту: https://parfum.shop-ua.net/shop/page/3/?filter_gender=zhinochi может что посоветуете?
Добрый день. Отвечаю. По ссылкам который Вы указали в комментарии ошибка 404 и я не смог посмотреть результат. Поэтому не могу посоветовать. Коды CSS для того, чтобы убрать краткое описание категорий работают для стандартных решений, если у вас не стандартная тема, то там нужно смотреть какой класс и его исключать или отключить сам вывод короткого описания через functions.php или удалить код вывода этого описания в самой теме.