Я написал собственный тип сообщения, называемый «служащие», и теперь пытается запросить его, вызвав этот тип сообщения после того, как он показал страницу отдела. Я создал настраиваемый мета-ящик с несколькими аргументами в нем, например, с отделом, с раскрывающимся списком, чтобы люди могли легко назначить человека в нужном отделе. Если критерии соблюдены, должна отображаться картина сотрудников (или в моем случае, слово crap
как тест).Meta Query in Wordpress игнорируется
Однако у меня, похоже, проблема с попыткой получить правильный запрос. Мой код выглядит следующим образом. Мне нужно очистить все еще, и его код в процессе, поэтому не стреляйте в то, как он запрограммирован. Его просто запрос на данный момент.
Это код для мета поле
$prefix = 'shm_';
$meta_box = array(
'id' => 'meta-employees',
'title' => 'Overige informatie',
'page' => 'employees',
'context' => 'normal',
'priority' => 'high',
'fields' => array(
array(
'name' => 'position',
'desc' => 'The name of the job position',
'id' => $prefix . 'position',
'type' => 'text',
'std' => ''
),
array(
'name' => 'department',
'desc' => 'Select the department this employee is working in',
'id' => $prefix . 'department',
'type' => 'select',
'options' => array('Board', 'Sales, Marketing & Revenue', 'Option 3', 'Option 4', 'Option 5', 'Option 6')
)
)
);
И это для запроса
<?php
if(!is_front_page()){
if (is_page('board')){
$page = 'board';
}elseif (is_page('sales-marketing-revenue')){
$page = 'Sales, Marketing & Revenue';
}
echo $page;
$i = 0;
$args = array(
'numberposts' => -1,
'post_type' => 'employees',
'meta_query' => array(
'key' => 'department',
'value' => $page,
'compare' => '=',
)
);
query_posts($args);
if (have_posts()) :
while (have_posts()) : the_post();
echo "crap";
?>
<?php endwhile; ?>
<?php endif; ?>
<?php } ?>
эта часть технически работает, однако она выплевывает все сотрудники, а не те, которые я установил на конкретный отдел, такой как board
. Когда я печатаю массив, все работает нормально.
Array ([numberposts] => -1 [post_type] => employees [meta_query] => Array ([key] => department [value] => Sales, Marketing & Revenue [compare] => =))
Тем не менее, продажи маркетинг & доход только один человек, прикрепленный к нему, а не 3 (общее количество сотрудников я вступил до сих пор), которые отображаются на дисплее. Похоже, что он игнорирует мета-запрос.
Кто-нибудь может мне помочь?
В кодексе Wordpress, если быть точным: https://codex.wordpress.org/Class_Reference/WP_Meta_Query – Dorvalla