Intereting Posts
Перенаправление на панель управления после входа в систему Проблема при просмотре последних сообщений с сетевого сайта на главный сайт Как получить URL-адрес из объекта WP_HTTP? Можно ли добавить фильтр для вывода элементов навигационного меню в admin? URL-адрес для категорий wordpress Проверьте, есть ли у виджета контент Информация о продукте Запретить сохранение сообщения без предоставления заголовка Отзывчивые изображения. Создание нескольких изображений из загрузки пользовательского элемента Theme. Плагин не подготовлен для локализации Правильный способ скрыть псевдо-страницы от показа? wp-admin, похоже, перенаправляет Как разрешить ошибку «Cookies заблокированы из-за неожиданного вывода».? Как отфильтровать метаопределение таксономии для фильтра «single_term_title» Почему пользовательский тип сообщения нуждается в настройке «иерархических» аргументов?

Скрыть виджет внутри div для определенного типа сообщения

У меня есть пользовательский тип сообщения, называемый «продукт», и я хочу скрыть конкретный виджет, только если тип сообщения «продукт», который я пытался с чем-то вроде этого:

<?php function hidewidget() { $args = array( 'name' => 'product' ); $output = 'objects'; $post_types = get_post_types( $args, $output ); return $post_types; } $widhide = hidewidget(); ?> <?php if ($widhide = 'product') { } else { ?> <div class="widgetclass"><?php dynamic_sidebar( 'filters' ); ?></div> <?php } ?> 

Проблема заключается в следующем: эта функция просто возвращает имя, я не могу ничего сделать с именем.

Мне нужно вызвать функцию, возвращающую страницу с определенным типом сообщения.

Это возможно в WordPress? любое другое решение, чтобы скрыть этот div на странице сведений о продукте в woocommerce?

pd: Я не могу удалить .widgetclass он должен быть там , я пытаюсь .widgetclass «виджет» для скрытия виджета, но div .widgetclass все еще явно отображается.

Solutions Collecting From Web of "Скрыть виджет внутри div для определенного типа сообщения"

Вы можете просто проверить, является ли это конкретным post_type ..

 if (is_singular( 'product' ) ) { //do nothing if it's a singular product page }else{ <div class="widgetclass"><?php dynamic_sidebar( 'filters' ); ?></div> { 

Убедитесь, что фактический тип сообщения является только «продуктом» и не содержит имен.

Я бы использовал плагин Widget Logic и использовал условное выражение внутри поля:

 ! is_singular( 'product' ) 

Это будет отображаться на всех страницах, кроме отдельных продуктов.

введите описание изображения здесь

Добавьте условное выражение после имени функции в код, который вызывает ваш виджет.

 if ( is_singular( 'product' ) ) return: 

Или

 if ( ! is_singular( 'product' ) ) 

Использует! NOT Logical operator с условным тегом is_singular