Я пытаюсь зацепить основной запрос: < /p>
Код: Выделить всё
add_action( 'pre_get_posts', 'customprefix_pre_get_posts' );
function customprefix_pre_get_posts( $query )
{
$user = wp_get_current_user();
if ( $query->is_main_query() && is_product_category() )
{
/** @var array $allowed Post IDs */
$allowed = customprefix_get_allowed_products_per_user( $user );
$query->set( 'post__in', $allowed );
}
}
, пока больше погружаясь в функцию get_posts () в wp_query Похоже, что мое изменение в запросе возвращается правильно (по ссылке) из Pre_get_posts Hook. Следующая строка: $ Q = $ this-> fill_query_vars ($ q); каким-то образом теряет мою пользовательскую поля __in .
Большая часть документации для wp_query < /code> и post__in вращаться вокруг создания нового запроса, не изменяя основной запрос.
Подробнее здесь: https://stackoverflow.com/questions/794 ... e-post-ids
Мобильная версия