J'ai récemment développé un site Wordpress et j'ai rencontré un problème. J'ai besoin que l'utilisateur puisse naviguer entre les publications, j'utilise les fonctions standard Wordpress previous_post_link()
et next_post_link()
qui devraient THEORY afficher les liens aux messages suivants et précédents dans la base de données ... MAIS les seuls liens qui apparaissent sont ceux du dernier message; le premier article publié et dans le cas du premier article publié; le dernier post.
Il y a 5 postes et ils produisent tous les mêmes liens, je ne fais pas de bêtises ni d’extérieur.
J'ai également eu quelques problèmes initiaux avec la pagination sur le flux de blog principal, mais cela semble être résolu maintenant ....
Voici mon code:
single.php
<?php get_header(); the_post();?>
<div class="page-heading--cloud">
<h1>BLOG</h1>
</div>
<article class="single">
<div class="single__wrap">
<img class="single__image" src="<?php echo Image::get(wp_get_attachment_url(get_post_thumbnail_id($post->ID))); ?>">
<p class="single__date">Posted on <?php the_time('jS F Y'); ?> by <?php the_author(); ?></p>
<h1 class="single__title"><?php the_title(); ?></h1>
<div class="single__content">
<?php the_content(); ?>
</div>
</div>
</article>
<div class="page-navigation">
<hr class="page-navigation__line">
<p class="page-navigation__link"><?php previous_post_link('<i class="fa fa-long-arrow-left"></i> %link'); ?></p>
<p class="page-navigation__link"><?php next_post_link('%link <i class="fa fa-long-arrow-right"></i>'); ?></p>
<hr class="page-navigation__line">
</div>
<?php get_footer();?>
et voici le fil principal du blog:
index.php
<?php get_header(); ?>
<!-- Side info -->
<div class="page-heading--cloud">
<h1>BLOG</h1>
</div>
<div class="blog page-data">
<article class="page-data__main">
<?php while(have_posts()) : the_post(); ?>
<div class="blog__post">
<img class="blog__image" src="<?php echo Image::get(wp_get_attachment_url(get_post_thumbnail_id($post->ID))); ?>">
<div class="blog__post__wrap">
<p class="blog__post__date">Posted on <?php the_time('jS F Y'); ?> by <?php the_author(); ?></p>
<h2 class="blog__post__title"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
<p class="blog__post__excerpt"><?php echo get_the_content_excerpt(30); ?></p>
<a class="blog__post__more" href="<?php the_permalink(); ?>">Continue Reading <i class="fa fa-arrow-right"></i></a>
</div>
</div>
<?php endwhile;?>
<?php if(!have_posts()) : ?>
<h2>There are no posts to display at this time.</h2>
<?php endif; ?>
</article>
<?php get_template_part('partials/sidebar', 'landing'); ?>
</div>
<div class="page-navigation">
<hr class="page-navigation__line">
<p class="page-navigation__link"><?php previous_posts_link('<i class="fa fa-long-arrow-left"></i> Newer Posts'); ?></p>
<p class="page-navigation__link"><?php next_posts_link('Older Posts <i class="fa fa-long-arrow-right"></i>'); ?></p>
<hr class="page-navigation__line">
</div>
<?php get_footer(); ?>
J'espère que quelqu'un pourra m'aider avec ce problème. Si vous pouviez me diriger vers des solutions potentielles, ce serait génial! Bien que j'aie déjà cherché et essayé, essayé des suggestions de personnes, etc., c'est pourquoi j'ai choisi de faire ce post.
Si quelque chose n'est pas clair, merci de me le faire savoir :)
Merci d'avance!
J'ai compris la nature du problème ... certains de mes messages ont été générés (à des fins de développement) à l'aide de "créateur en bloc", ce qui ne semble pas créer un article complet! Quand je crée un article manuellement en utilisant le backend WP, mon code fonctionne bien, merci pour les suggestions de toute façon les gars!