Créer plusieurs pages de “blog” sur un site WordPress

De nouveau en train de créer un site avec WordPress, et malgré les années passées à utiliser ce CMS (1), je me repose les mêmes questions 🙂 Pour plusieurs raisons ! la plateforme elle-même évolue, des plugins ne sont plus suivis, et les thèmes et extensions ne respectent pas tous les mêmes règles !

Attribuer des rôles différents aux utilisateurs

Comme je l’avais mentionné dans un précédent article, j’utilise sur les sites l’extension Role Manager, qui permet de créer et gérer des groupes d’utilisateurs finement, en leur accordant juste les droits souhaités. Mais depuis la dernière version 6 de WordPress, si cette extension est active, l’administrateur n’accède plus aux comptes utilisateurs, et ne peut donc plus générer un nouveau mot de passe si nécessaire ou modifier les droits attribués.

En remplacement, j’ai installé WPFront User Role Editor. Cette extension est moins complète que Role Manager mais peut suffire dans la majorité des cas. Sinon, une autre option est de réactiver Role Manager le temps de la création de l’octroi des droits aux utilisateurs, puis de la désactiver !

Disposer de plusieurs pages “dynamiques”

Dans le même article, j’avais décrit comment créer plusieurs pages sur lesquelles s’affichent les articles d’une même catégorie, et je référençais le site de Quentin Busuttil. Mais la page n’existe plus.

Heureusement, j’avais noté comment s’y prendre. Cela fonctionne sur un de mes sites, mais j’ai dû apporter quelques modifications sur un autre. En fonction du thème, les bouts de code à ajouter ne sont pas tout à fait identiques…

Avec le thème Dulcet par exemple :

  • ouvrir le fichier index.php. du thème,
  • pour créer le modèle de page :
    • créer un fichier, par exemple monmodeledepage.php,
    • copier tout le contenu du fichier index.php du thème dans ce nouveau fichier,
    • au début du fichier, insérer
      <?php /* Template Name: monmodeledepage */ ?>
    • avant la ligne
      <code>while(have_posts())

      ajouter un autre morceau de code

      <?php
      $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
      query_posts("category_name=nomdelacategorie&paged=$paged");
      ?>
  • créer une nouvelle page, puis dans le panneau attribut de la page, choisir le modèle créé, ici monmodeledepage,
  • dans la page créée, ajouter le nom du modèle monmodeledepage.

Tous les articles de la catégorie nomdelacategorie s’afficheront dans cette page.

Autre exemple, avec le thème Magbook :

Commencer comme avec le thème précédent, mais

  • avant la ligne
    <code>while(have_posts())

    ajouter ce bout de code

    $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
    query_posts("category_name=nomdelacategorie&paged=$paged");

Puis poursuivre comme précédemment.


Ecrit par Lise - Site

  1. CMS signifie Content Management System, en français, Gestion de contenu. []

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

Laisser ces deux champs tels quels :

Protégé par Invisible Defender. 313 435 spammeurs ont vu s'afficher une page d'erreur 403.

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.