Intereting Posts
комментарий по электронной почте Синхронизация по типу пользовательских почтовых постов / упорядочение по таксономии Моя установка WordPress не загружает стили администратора Разбивка страницы для страницы, созданной с помощью короткого кода «Продукт», Помимо редактирования меню боковой части виджета, с php-страницей, настраиваемый шаблон Детская тема – изменение заголовка WordPress Woocommerce – Тип продукта Предотвращение загрузки небольших изображений Используется более одного текстового домена из-за включенных шаблонов для плагинов Файлы cookie для проверки подлинности WordPress и ajax calls Использование крючков для динамического размещения контента в теме WP set auth cookie с использованием Ajax не сохраняется в браузере Могу ли я создать новый тип комментариев? Пользователи Как консолидировать все файлы Sitemap в многопользовательской сети?

Переменная не работает в WP_Query

Я использовал эту технику раньше и не могу понять, почему на этот раз она не работает.

«news_category» – это обычная таксономия моего пользовательского типа «Новости».

Я получаю таксономию текущего сообщения (которое является персонализированным типом сообщений типа), используя get_the_term_list, заменяя пробелы «-» и используя переменную в моем запросе.

Если я повторю запрос, он дает мне точную строку, которую я ожидаю, – и если я вручную введу эту строку в запрос, она работает, но переменная doesnt.

<?php $cats = get_the_term_list($post->ID, 'news_category'); ?> <?php $cat = str_replace(' ', '-', $cats);?> <?php $category = strtolower($cat); ?> <?php echo $category; ?> <?php $args = array( 'post_type' =>'news', 'news_categories' => $category, 'post__not_in'=> array($post->ID) ); ?> <?php $sidebar_category = new WP_Query($args); ?> 

Solutions Collecting From Web of "Переменная не работает в WP_Query"

Вы должны использовать массив следующим образом:

 array( 'post_type' =>'news', 'category_name' => $category, //use category slug (NOT name). 'post__not_in'=> array($post->ID) ); 

Для получения дополнительной информации посетите эту ссылку

Переменная не работает, потому что get_the_term_list возвращает строку HTML-ссылок, тогда как для массива $args требуются пули. Я не уверен, что вы можете передать массив пули, используя ваш текущий метод, или нет. Вы можете передать массив пули с помощью массива tax_query .

Кстати, используя текущий метод, вы должны быть настройки имя налога на «news_category», а не «news_categories», но это спорный вопрос.