Je suis lié à faire une page d'archive pour tous les postes de catégorie "alimentaire". J'ai donc créé un fichier php appelé category-food.php et ajouté mon code, mais le code ne fonctionnait pas correctement. J'ai eu du mal à comprendre pourquoi jusqu'à ce que je colle le code sur un autre fichier php, page-food.php. Le code a fini par travailler sur la page-nourriture. Est-ce que quelqu'un a une raison pour laquelle c'est le cas, et comment je peux le faire fonctionner sur category-food.php?Charger plus de bouton ne fonctionne pas pour la page de la catégorie
* le problème principal était que sur le bouton category-food.php mon ajax load more ne s'affichait pas du tout. Mais sur page-food.php, le bouton ajax load more est apparu et a parfaitement fonctionné. C'est le plugin que je utilise pour cela - https://wordpress.org/plugins/easy-load-more/
Le code ...
<?php
get_header();
get_template_part ('inc/carousel-food');
$the_query = new WP_Query(array(
'posts_per_page' => 3,
'paged' => get_query_var('paged', 1),
'cat' => 10,
));
if ($the_query->have_posts()) {
// display #ajax wrapper only if we have posts
echo '<div id="ajax"><div class="row">';
$i = 0;
while($the_query->have_posts()) {
$the_query->the_post(); ?>
<?php
if($i % 3 == 0) {
echo '</div><div class="row">';
}
?>
<div class="col-md-4">
<article <?php post_class(); ?> >
<?php the_post_thumbnail('medium-thumbnail'); ?>
<h2><a class="post-title" href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
<p class="post-excerpt"><?php echo get_the_excerpt(); ?></p>
<?php get_template_part('share-buttons'); ?>
<a class="moretext" href="<?php the_permalink(); ?>">Read more</a>
<?php comments_popup_link ('No Comments', '1 Comment', '% Comments', 'comment-count', 'none'); ?>
</article>
</div>
<?php $i++; }//end while
echo '</div></div>'; // close the #ajax wrapper after the post list
if(get_query_var('paged') < $the_query->max_num_pages) {
load_more_button();
}
} else { // if there are no posts
echo '<p>Sorry, no posts matched your criteria.</p>';
}//end if
get_footer();
?>
MISE À JOUR CODE
<?php
get_header();
get_template_part ('inc/carousel-food');
global $wp_query;
$wp_query->set('posts_per_page', 3);
$wp_query->query($wp_query->query_vars);
$the_query = new WP_Query(array(
'posts_per_page' => 3,
'paged' => get_query_var('paged', 1),
'cat' => 10,
));
if ($the_query->have_posts()) {
// display #ajax wrapper only if we have posts
echo '<div id="ajax"><div class="row">';
$i = 0;
while($the_query->have_posts()) {
$the_query->the_post(); ?>
<?php
if($i % 3 == 0) {
echo '</div><div class="row">';
}
?>
<div class="col-md-4">
<article <?php post_class(); ?> >
<?php the_post_thumbnail('medium-thumbnail'); ?>
<h2><a class="post-title" href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
<p class="post-excerpt"><?php echo get_the_excerpt(); ?></p>
<?php get_template_part('share-buttons'); ?>
<a class="moretext" href="<?php the_permalink(); ?>">Read more</a>
<?php comments_popup_link ('No Comments', '1 Comment', '% Comments', 'comment-count', 'none'); ?>
</article>
</div>
<?php $i++; }//end while
echo '</div></div>'; // close the #ajax wrapper after the post list
if(get_query_var('paged') < $the_query->max_num_pages) {
load_more_button();
}
} else { // if there are no posts
echo '<p>Sorry, no posts matched your criteria.</p>';
}//end if
get_footer();
?>
Pourriez-vous le mettre dans mon code pour moi? Je ne suis toujours pas le meilleur en PHP et quand j'ai essayé de l'ajouter, je pense que je l'ai mis au mauvais endroit parce que j'ai eu une erreur. – user6738171
quel genre d'erreur? toujours pas de bouton? – Grin
La seule chose sur la page était mon en-tête, et mon carrousel (qui a été foiré) j'ai collé le code que j'ai mis en haut dans ma question. Mais je suis certain que j'ai ajouté le code que vous avez suggéré au mauvais endroit. – user6738171