Désolé pour cela, mais j'ai vraiment passé au peigne fin tout ce qu'il y a sur le sujet et je ne peux pas venir à la solution, même si c'est probablement très simple:
J'ai un front-page.php défini comme page de couverture statique du site WordPress. Il y a un lien que je voudrais lier au home.php ou index.php.
Comment puis-je écrire l'URL?
<a href='<?php echo esc_url( home_url()); ?>' title='<?php echo esc_attr( get_bloginfo( 'title' ) ); ?>' rel='home'>
Qu'est-ce que j'écris au lieu de home_url () , ce qui me fait bien sûr sur le front-page.php?
Merci beaucoup pour votre aide!
Il devrait vraiment y avoir un moyen plus simple de le faire, mais vous devez en quelque sorte savoir que WordPress stocke à la fois l’ID de la page d'accueil et celui de la page de blog dans le tableau des options. Donc, pour obtenir l'URL du blog, vous devez utiliser à la fois get_permalink()
et get_option()
en conjonction.
<a href='<?php echo esc_url( get_permalink( get_option( 'page_for_posts' ) ) ); ?>' title='<?php echo esc_attr( get_bloginfo( 'title' ) ); ?>' rel='home'>Blog Page</a>
Ce qui précède va récupérer la valeur page_for_posts
de la table d’options qui contient l’ID de page du blog qui doit être défini dans Settings -> Readings
. En passant un ID à get_permalink()
, il retournera l'URL de la chaîne dont nous avons besoin pour la page.
Eh bien, pour terminer cette question, tout d’abord - merci, @Howdy_McGee! Vous étiez sur la bonne voie, et la solution qui fonctionne est
<a href="<?php echo get_permalink( get_option( 'page_for_posts' ) ); ?>">Blog Page</a>
Le esc_url
ne fait pas le travail ici. Je ne suis pas aussi apte d'un développeur à savoir pourquoi, même si j'aimerais bien. Merci encore!