Posts2Posts, wp_query и проблема с orderby
Я уже несколько часов бьюсь над этой проблемой и зашел в тупик. Следующий запрос отказывается принимать любые директивы orderby. Примечание: Этот код выполняется на странице single-cpt.php в рамках стандартного цикла WordPress:
<?php $args = array(
'orderby' => 'title', // Сортировка по заголовку
'order' => 'ASC', // По возрастанию
'suppress_filters' => true, // Отключение фильтров
'nopaging' => true, // Без пагинации
'connected_type' => 'directory_to_projects', // Тип связи
'connected_items' => get_queried_object_id(), // Связанные элементы
);
$new_connected = new WP_Query($args);
// Отображение связанных записей
if ( $new_connected->have_posts() ) { ?>
<h3>Проекты</h3>
<ul>
<?php while ( $new_connected->have_posts() ) : $new_connected->the_post(); ?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endwhile;
endif;
wp_reset_postdata(); ?>
</ul>
<?php } ?>
Я подтвердил, что у меня не установлены плагины для сортировки страниц или записей, которые могли бы влиять на 'orderby'. Изменение 'orderby' на другие значения (name, date, meta_value и т.д.) не дает никакого эффекта.
Обновление: На самом деле не работают никакие параметры wp_query. Я попробовал добавить 'posts_per_page' => 2,
, и это тоже не дало эффекта. Должно быть, это связано с плагином posts2posts, но, кажется, его поддержка прекращена. :( Кто-нибудь сталкивался с подобным?
Есть идеи? Большое спасибо за помощь!
У меня нет опыта работы с posts2posts, но чтобы увидеть запрос, который wp_query выполняет в вашей базе данных, перед оператором if добавьте echo $new_connected->request.
Это очень помогло мне при отладке wp_query, когда я не мог понять, какие параметры не работают. Выводом будет SQL-запрос, который будет выполнен в БД. Таким образом, вы можете скопировать этот запрос в phpmyadmin, чтобы увидеть результаты. Возможно, это поможет вам лучше понять проблему!
P.S. Использование 'orderby' => 'meta_value'
требует указания 'meta_key' => 'your_metakey_name'
, иначе система не узнает, по какому ключу получать значение для сортировки.
