J'ai ce code ci-dessous, et je souhaite afficher chaque lien de chaque message, mais je continue à recevoir le même lien vers tous les messages qui est le lien de la page.
$args = array('posts_per_page' => 5,'order' => 'DESC');
$rp = new WP_Query($args);
if($rp->have_posts()) :
while($rp->have_posts()) : $rp->the_post();
the_title();
$link=the_permalink();
echo '<a href="'.$link.'">Welcome</a>';
echo "<br />";
endwhile;
wp_reset_postdata();
endif;
Je vous remercie.
N'oubliez pas d'utiliser esc_url()
echo '<a href="'. esc_url( $link ).'">Welcome</a>';
Essayez aussi ceci: get_permalink( get_the_ID() );
$args = array('posts_per_page' => 5, 'order' => 'DESC');
$rp = new WP_Query($args);
if ($rp->have_posts()) :
$i = 0;
$link = '';
while ($rp->have_posts()) : $rp->the_post();
the_title();
if ($i == 0) $link = get_permalink();
echo '<a href="' . $link . '">Welcome</a>';
echo "<br />";
$i++;
endwhile;
wp_reset_postdata();
endif;
ce noyau ne reçoit que le premier lien de publication
Get_the_ID () manque dans la boucle. C’est pourquoi il affiche le permalien du premier message pour chaque message dans la boucle;
Essayez ce code
$args = array('posts_per_page' => 5,'order' => 'DESC');
$rp = new WP_Query($args);
if($rp->have_posts()) :
while($rp->have_posts()) : $rp->the_post();
the_title();
$link=get_the_permalink(get_the_ID()); //get_the_ID() gets the id of the post inside a loop
echo '<a href="'.$link.'">Welcome</a>';
echo "<br />";
endwhile;
wp_reset_postdata();
endif;
Remarque: Veuillez vérifier la documentation pour une meilleure compréhension.