Ваш запрос сработал для меня. Возможно, проблема в том, как вы извлекаете продукты и отображаете их?
Я реализовал на одном из своих сайтов следующее и перечислил первые 20 продуктов в алфавитном порядке:
add_action('astra_header_before', 'entreprenerds_callback');
function entreprenerds_callback() {
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$params = array(
'post_type' => 'product',
'post_status' => 'publish',
'posts_per_page' => 20,
// 'category__in' => array(22),
'paged' => $paged,
'orderby' => 'title',
'order' => 'ASC'
);
$query = new WP_Query( $params );
$total_found_posts = $query->found_posts;
$total_page = ceil($total_found_posts / 20);
echo "## " . $total_found_posts . " ##"; // shows me 51
while($query->have_posts()) {
$query->the_post();
echo get_the_title() . '<br />';
}
}
Используете ли вы правильный объект запроса в вашем цикле?