Utiliser la variable $post
Quand on affiche une page web, WP stocke toutes les informations liées à cette page précisément en cours d’affichage, dans une variable nommée $post. Cette variable est un objet PHP dont on va pouvoir extraire les infos dont on a besoin.
Pour voir ce qu’elle contient : https://codex.wordpress.org/Function_Reference/$post
Exemple d’utilisation : afficher des infos relatives au billet en cours de vue dans une sidebar
En l’état ce n’est pas très intéressant comme implémentation, mais c’est pour faire un exemple !
On a une boucle normale dans un fichier de template
<div id="primary" class="content-area">
<?php
// Dans un fichier de template une boucle simple
if (have_posts()) :
while (have_posts()) : the_post();
?>
<article>
<header class="entry-header">
<h1><?php the_title(); ?></h1>
</header>
<div class="entry-content">
<?php the_content(); ?>
</div>
<footer class="entry-footer">
<!-- ce que vous voulez ! -->
</footer>
</article>
<?php
endwhile;
endif:
?>
</div>
<?php get_sidebar(); // Ici on appelle sidebar.php ?>
<?php get_footer();
Ensuite notre sidebar pourrait contenir ceci
<?php
if ( ! is_active_sidebar( 'sidebar-principale' ) ) {
return;
}
?>
<aside id="secondary" class="widget-area" role="complementary">
<p>"<?php echo $post->post_title; ?>" a été rédigé le <?php echo $post->post_date; ?>.</p>
<!-- d'autres infos insérées via des widgets... -->
<?php dynamic_sidebar( 'sidebar-principale' ); ?>
</aside>
Ici nous pourrons récupérer des infos relatives au post en cours d’affichage :
- Le titre du billet en cours de vue :
$post->post_title;
- Sa date de publication :
$post->post_date;
A noter qu’ici on récupère la date et l’heure de ce type 14-04-18 17:37:12