WP_Query
Объект принимает пост мета аргумент. Вообще говоря, вы хотите сделать следующее:
$my_query = new WP_Query(
array(
'post_type' => 'post',
'meta_query' => array(
array(
'key' => 'project_cat',
'value' => 'my-value',
)
),
// Other query properties
)
);
Где «my-value» - это ваше «указанное значение».
Пример использования:
add_action( 'pre_get_posts' , 'my_pre_get_posts' );
function my_pre_get_posts( $query ) {
// Check this is main query and other conditionals as needed
if( $query->is_main_query() ) {
$query->set(
'meta_query',
array(
array(
'key' => 'project_cat',
'value' => 'my-value'
)
)
);
}
}
Смотрите WP_Query , pre_get_posts . Все условия доступны для вас. В настоящее время это выполняется для каждого основного запроса - который вы, вероятно, не хотите.
В качестве альтернативы вы можете использовать query_posts
(более простой, но гораздо менее эффективный способ) изменить запрос только для конкретного экземпляра в шаблоне.