Probleme cu Posts2Posts, wp_query și orderby - Soluții și depanare
Lucrez la această problemă de câteva ore și sunt blocat. Următoarea interogare refuză să accepte orice directivă orderby. NOTĂ: Acest cod rulează pe o pagină single-cpt.php în cadrul loop-ului normal WP:
<?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);
// Afișează postările conectate
if ( $new_connected->have_posts() ) { ?>
<h3>Proiecte</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 } ?>
Am confirmat că nu rulez niciun plugin de ordonare a paginilor sau postărilor care ar putea interfera cu 'orderby'. Schimbarea 'orderby' la altceva (nume, dată, meta_value, etc.) nu are niciun efect.
ACTUALIZARE: De fapt, niciun parametru pentru wp_query nu funcționează. Am încercat să adaug 'posts_per_page' => 2,
și nici asta nu a avut efect. Probabil este o problemă legată de posts2posts, dar cred că suportul pentru acel plugin a fost întrerupt. :( Ați întâlnit vreodată această problemă?
Aveți idei? Vă mulțumesc mult pentru ajutor!
Nu am experiență cu posts2posts, dar pentru a vedea interogarea pe care wp_query o rulează în baza ta de date, înainte de declarația ta if, pune echo $new_connected->request.
M-a ajutat foarte mult să debug-uiesc wp_query când nu puteam să aflu ce parametri nu funcționau. Rezultatul este interogarea SQL care va fi executată în baza de date. Prin urmare, poți copia această interogare în phpmyadmin pentru a vedea rezultatele. Poate te va ajuta să înțelegi mai bine problema!
PS folosirea 'orderby' => 'meta_value'
necesită 'meta_key' => 'numele_metakey-ului_tău'
altfel nu știe din ce cheie să ia valoarea pentru sortare.
