Ce tutoriel WordPress est entièrement gratuit.
Merci de désactiver votre bloqueur de pub ! =)

Templates de Page

Le seul template page.php peut ne pas suffir.

Nous venons de voir ce que contenait le template page.php. Il est plutôt basique mais joue bien son rôle.

Une des particularités des Pages, et j’en avais déjà parlé, est de pouvoir créer des templates de Page. Il s’agit tout simplement d’un fichier où vous mettez le code PHP que vous voulez. Ce code sera affiché à travers une Page, du moment que vous lui disiez (à cette Page) d’utiliser ce template.

Cela se fait donc en 3 étapes :

  1. Créer un template de Page
  2. Créer une Page dans l’admin WordPress
  3. Dire à cette dernière d’utiliser le template précédemment créé

Création d’un template de Page

Un template de Page n’est autre qu’un fichier PHP particulier. On peut lui donner le nom que l’on veut, tant qu’il ne s’agit d’un des noms réservés par WP.

Créons par exemple un fichier qui recensera certaines statistiques du site :

Dupliquons page.php et renommons-le stats.php (ou hasta-la-vista.php, le choix est libre et pas pénalisant pour la suite). La première chose à faire est de transformer ce fichier en un template de Page. Pour cela, rien de plus simple. Il faut ajouter le bout de code suivant au début du fichier :

<?php
/*
Template Name: Statistiques
*/
?>

Cela définit non seulement le fichier stats.php comme étant un template de Page mais aussi le nom du template lui-même.

Voici donc le code entier du fichier stats.php :

<?php
/*
Template Name: Statistiques
*/
?>
<?php get_header(); ?>
<div class="main page">
  <?php if (have_posts()) : ?>
    <?php while (have_posts()) : the_post(); ?>
      <div class="post">
        <h1 class="post-title"><?php the_title(); ?></h1>
        <div class="post-content">
          <p>Nombre de Posts : <strong><?php echo wp_count_posts()->publish; ?></strong></p>
          <p>Nombre de Pages : <strong><?php echo wp_count_posts('page')->publish; ?></strong></p>
          <p>Nombre de commentaires publiés : <strong><?php echo wp_count_comments()->approved; ?></strong></p>
        </div>
      </div>
    <?php endwhile; ?>
  <?php endif; ?>
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

Vous aurez remarqué que la fonction the_content() a disparu au profit des 3 paragraphes. Il est néanmoins possible de la garder :

<div class="post-content">
  <?php the_content(); ?>
  <p>Nombre de Posts : <strong><?php echo wp_count_posts()->publish; ?></strong></p>
  <p>Nombre de Pages : <strong><?php echo wp_count_posts('page')->publish; ?></strong></p>
  <p>Nombre de commentaires publiés : <strong><?php echo wp_count_comments()->approved; ?></strong></p>
</div>

Dans ce cas, le contenu que vous rentrerez dans le WYSIWYG de l’admin WP sera affiché avant les 3 paragraphes.

Utilisation d’un template de Page

Nous avons créé le fichier. Maintenant il faut l’afficher. Pour cela, il faut d’abord créer une Page dans l’admin WordPress. Nommez-la comme bon vous semble (la mienne s’appelle « Statistiques du site »). Remplissez le contenu si votre template l’affiche.

Puis déplacez votre regard vers la droite de l’écran, et vous verrez ce joli bloc intitulé « Attributs de la page » :

attributs-de-page-wordpress

Voici résumées les spécifités des Pages dont on avait déjà parlé, à savoir :

Celui qui nous concerne actuellement est le deuxième. Cliquez sur le menu déroulant et choisissez « Statistiques » :

choix-template-de-page-wordpress

« Modèle par défaut » correspond à page.php.
« Statistiques » correspond à stats.php.

Et voilà ! On vient de faire le lien entre notre template stats.php et la Page « Statistiques du site ».