Un noob complet ici avec wordpress, j'apprends le développement de thèmes pour wordpress.

Est plus pour un intérêt scientifique qu'un problème.

Je crée une page single.php pour mon thème et j'ai ceci et cela fonctionne.

<?php get_header();?>
<h2 class="mb-4"><?php the_title();?></h2>
<div class="row">
<?php
if ( have_posts() ) {

    while ( have_posts() ) {
        the_post();

        the_content();

    }
}
?>
</div>
<?php
get_footer(); ?>

Je me demande pourquoi ça marche. Pourquoi the_title() me donne le titre de mon message avant d'appeler la boucle. Si je fais un var_dump(the_post()); avant la boucle, je ne reçois rien. Idem si j'appelle the_content() avant la boucle, je n'obtiens rien. J'imprimais précédemment wp_nav_menu() est-ce que cela a quelque chose à voir avec ça?

0
user9182530 4 févr. 2020 à 13:28

1 réponse

Meilleure réponse

WordPress est un système de gestion de contenu conçu et développé de manière à ce que single.php soit utilisé pour obtenir les données d'un article. Donc the_title n'a pas besoin d'être à l'intérieur de la boucle. Pour plus de détails, je vous recommande de lire la doc suivante :

https://developer.wordpress.org/themes/basics/template-files/

2
Fahad 4 févr. 2020 à 10:36