Techniquement, c’est logique car rappelons une nouvelle fois que cette fonctionnalité est conçue dans un but de mise en forme. Pour autant, il peut être utile de retrouver sur une page l’ensemble des articles au format vidéo comme c’est le cas sur ma page de podcasts vidéos.
Nous aurons ici recours à la création d’un modèle de page pour WordPress, ni plus ni moins, et d’une requête personnalisée pour récupérer les articles au(x) format(s) souhaité(s).
N.B : le code ci-dessous est volontairement simplifié en faisant abstraction de toute structure HTML, celle-ci dépendant directement de votre thème WordPress. De fait, reportez-vous au tutoriel sur la création de modèle de page pour en savoir plus.
Étape n°1 – Création du modèle de page
À l’aide de votre client FTP favori, créez un nouveau fichier que vous nommerez par exemple template-NOM_DU_FORMAT.php. Ce dernier doit être placé à la racine du dossier de votre thème WordPress – qu’il s’agisse d’un thème parent ou enfant.
Commençons par définir le modèle de page pour qu’il soit reconnu par WordPress, j’entends par là qu’il pourra être choisi dans la liste des modèles disponibles pour votre page au sein du back-office.
Copiez donc le bout de code suivant en début de fichier :
Étape n°2 – Récupération des contenus
Nous aurons recours à la fameuse WP_Query pour lister les articles dont le format souhaité. Il nous faut définir une tax_query
comme argument qui ira chercher le format vidéo dans cet exemple. Vous pouvez ajouter les formats de votre choix en les séparant par des virgules dans le tableau array('post-format-video')
.
On boucle ensuite pour afficher les contenus en respectant les formats bien entendu ce que votre thème doit supporter ! Il s’agit de la structure définie par get_template_part('content', get_post_format());
.
Étape n°3 – Création de la page
Dans votre administration WordPress, créez une nouvelle page pour laquelle vous assignerez le modèle nouvellement codé à partir de Attributs de la page.
Dans notre exemple, il s’agira de Podcasts.
Publiez la page et admirez le résultat final ! Il ne vous reste plus qu’à ajouter cette dernière dans le menu de navigation et le tour est joué !
j’ai vraiment pas compris pourquoi la pagination déconnait et j’ai découvert accidentellement qu’on pouvait accéder aux archives par format : url/type/le-format/
je me suis donc contentée de personnaliser la page des archives
Merci pour ce tutoriel qui répond parfaitement à ce que je souhaite faire
Je rencontre un problème avec la pagination (avec the_posts_pagination précisément) et après avoir fouiné, je suis tombée sur ce « hack » :
http://wordpress.stackexchange.com/questions/120407/how-to-fix-pagination-for-custom-loops/120408#120408
je ne suis pas une pro de WP alors j’hésite à utiliser ce hack ou bien créer une catégorie pour contourner le problème (même si c’est « pas bien » et que ça fera faire une manip de plus à l’utilisateur final du site)
As-tu rencontré le même problème que moi et comment l’as-tu résolu ?
Hum le tutoriel gère la pagination… possible qu’une incompatibilité due à une autre requête survienne. Le lien est pertinent oui.
Surtout pas de catégorie pour créer une pagination ! 😉
C’est propre, mais je ne vois pas trop ce que ça apporte en plus d’une simple catégorie ‘video’ que l’on associerait à chaque vidéo et qui générerait alors automatiquement sa page d’archive !?
D’un point de vue SEO, c’est un non-sens que de créer une catégorie qui n’a aucun lien sémantique avec le reste du site. C’est un terme générique et les formats d’articles ont justement été créés pour éviter d’utiliser les catégories qui sont là pour classer des contenus et en aucun cas s’occuper de mise en forme.