Intereting Posts
Запуск WordPress в командной строке – Выключить задержку вывода? Сделано поле поиска с полем, скрытым до выпадающего выделения. Как запереть кнопку «Опубликовать», чтобы проверить проверку метаданных? Как создать главный архив? Несколько настраиваемых циклов типа сообщения в category.php Переименование медиафайлов, созданных при загрузке отображение персонализированного сообщения на отдельной странице Добавить атрибут catagory для пользовательского короткого кода Как запросить мои сообщения WordPress на другой странице HTML с помощью WordPress Restful API? Пользовательский тип сообщения без редактора или изменений. Уведомлять об обновлении? Плагин уведомления о новостях обновления есть плагин jcarousel для wordpress, который загружает динамические изображения Добавьте дополнительные данные к определенному термину таксономии при использовании в должности Как получить отдельное детское меню? Как сгруппировать несколько wp_errors вместе?

Как проверить конкретное значение в двух метабоксах?

Использование двух массивов в мета-запросе не работает для меня, особенно при использовании значения второго массива.

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

Если значение $current_player_name присутствует в любом из мета-ключей, мне нужно показать заголовок соответствующих сообщений.

Может ли кто-нибудь рассказать мне о проблеме следующего кода?

 <?php $current_player_name = get_post_meta( get_the_ID(), 'football_team_team_name', true ); $args = array( 'post_type' => 'football_fixture', 'meta_query' => array( 'relation' => 'OR', array( 'key' => 'pb_responsible_home_person', 'value' => $current_player_name ), array( 'key' => 'pb_responsible_away_person', 'value' => $current_player_name ), )// meta query end );//$args end $player_query = null; $player_query = new WP_Query($args); ?> <!-- the loop --> <?php while ( $player_query->have_posts() ) : $player_query->the_post(); ?> <ol> <li><?php the_title(); ?></li> </ol> <?php endwhile; ?> <!-- end of the loop --> <?php wp_reset_postdata(); ?> 

Solutions Collecting From Web of "Как проверить конкретное значение в двух метабоксах?"

Вам нужно добавить аргумент meta_compare в мета-запрос. Теперь ваш код будет выглядеть так:

  'meta_query' => array( 'relation' => 'OR', array( 'key' => 'pb_responsible_home_person', 'value' => $current_player_name, 'compare' => '=' ), array( 'key' => 'pb_responsible_away_person', 'value' => $current_player_name, 'compare' => '=' ), )// meta query end 

РЕДАКТИРОВАТЬ

$ current_player_name = get_post_meta (get_the_ID (), 'football_team_team_name', true);

  $m_keys =array('pb_responsible_home_person','pb_responsible_away_person') $meta_query = array('relation' => 'OR'); foreach ($m_keys as $m_key) { $meta_query[] = array( 'key' => $m_key, 'value' => $current_player_name, 'compare' => '=' ); } $args = array( 'post_type' => 'football_fixture', 'meta_query' => $meta_query ); 

Попробуйте это, работая, когда я проверил локально