J'essaie d'afficher des messages à partir d'une catégorie 'Non classé' sous une taxonomie personnalisée appelée 'Reviews' mais sans grande chance.
J'utilise get_template_part('loop','review')
pour appeler loop-review.php
qui contient ma boucle de taxonomie, mais pour une raison quelconque, rien ne s'affichera. Ce qui donne?
Voici le contenu de loop-review.php
...
<div class="row no-margin detail">
<p class="title"><span>reviews</span></p>
<?php
$args = array(
'post_type' => 'post',
'tax_query' => array(
array(
'taxonomy' => 'review',
'field' => 'slug',
'terms' => 'uncategorized'
)
)
); $review_query = new WP_Query($args); ?>
<?php if ($review_query->have_posts()): ?>
<?php while ($review_query->have_posts()): $review_query->the_post(); ?>
<p class="quote">
<?php the_content(); ?>
<span><?php the_title(); ?></span>
</p>
<?php endwhile; ?>
<!-- end of the loop -->
<?php wp_reset_postdata(); ?>
<?php else: ?>
<p><?php _e( 'Sorry, no posts matched your criteria.' ); ?></p>
<?php endif; ?>
</div>
J'appelle get_template_part('loop','review')
dans mon category.php
...
<?php
get_header();
if (is_category('portfolio')):
get_template_part('single','portfolio');
get_template_part('loop','review');
else:
get_template_part("single","blog");
endif;
get_footer();
?>
Enfin, voici le code de mon functions.php
...
add_action('init', 'build_taxonomies', 0);
function build_taxonomies(){
register_taxonomy('review', 'post', array(
'hierarchical' => 'true',
'label' => 'Reviews',
'query_var' => 'true',
'rewrite' => 'true'
)
);
}
Il n'y a pas de méthodes the_content()
ou the_title()
de votre objet de requête.
Celles-ci:
$review_query->the_content();
$review_query->the_title();
devrait juste être
the_content();
the_title();
Si vous aviez activé le débogage , une erreur vous en informerait.
À première vue, je constate que votre requête appelle 'post_type' => 'page'
alors que la taxonomie est enregistrée sur le type d'objet post
. Le fait de changer le type de publication en post
('post_type' => 'post'
) devrait résoudre le problème.