- — произвольный тип публикации (около 300 человек)
Код: Выделить всё
'person'
- — это поле даты, добавленное с помощью плагина Advanced Custom Fields.
Код: Выделить всё
'date_accredited'
Мне нужно перечислить каждого «человека» НО, ВСЕ аккредитованные сотрудники должны быть указаны первыми (так что около 20 аккредитованных сотрудников находятся наверху).< /p>
На В данный момент я вызываю WP_Query, например:
Код: Выделить всё
$args = array(
'posts_per_page' => -1,
'post_type' => 'people',
'no_found_rows' => true,
'meta_key' => 'date_accredited'
);
$people = new WP_Query($args);
Код: Выделить всё
while($people->have_posts()): $people->the_post();
$my_post_meta = get_post_meta($post->ID, 'date_accredited', true);
if (!empty($my_post_meta)) {
array_push($accredited, $post);
} else {
array_push($notAccredited, $post);
}
endwhile;
Код: Выделить всё
foreach($accredited as $person):
personTile($person);
endforeach;
foreach($notAccredited as $person):
personTile($person);
endforeach;
Функция personTile(); должна была выводить различную информацию и HTML (
Код: Выделить всё
the_post_thumbnail()
Код: Выделить всё
get_the_post_thumbnail($person->ID)
Код: Выделить всё
get_permalink($person->ID)
Код: Выделить всё
get_field('date_accredited', $person->ID)
Есть ли способ включить поля постоянной ссылки, миниатюры и ACF в исходный запрос к БД? Нужно ли мне прибегнуть к пользовательскому запросу MySQL???
Любые другие предложения приветствуются!
Подробнее здесь: https://stackoverflow.com/questions/281 ... tom-fields