# Wordpress
# Introduction
# Hiérarchie des templates
Pour afficher les contenus des différentes page, Wordpress utilise un ensemble de fichiers php, ou templates. Ces templates constitue une hierarchie qui permet de définir quel template s'applique en priorité dans le cas ou plusieurs templates sont potentiellement applicables à une même page.
On les trouve généralement à la racine du thème ou dans un sous-dossier du thème. Dans le cas de notre Starter theme, ils sont situés dans projet-theme/resources/views.
Nous présenterons ici les templates les plus communs qui te permettront de démarrer sereinement dans l'intégration WP. Pour en savoir plus sur le sujet, tu peux consulter la doc sur les templates.
Le Starter theme Digital Swing, basé sur Roots/Sage, utilise Laravel Blade afin de faciliter le développement front-end. L'extensions des templates dans ce cas est .blade.php
, mais la hierarchie des templates est la même que dans une installation classique de WP.
# Accueil et blog
Ces deux templates s'appliquent aux pages configurées dans Réglages > Lecture.
Le template pour la page d'accueil est front-page.php
et celui pour le blog home.php
.
# Page
Ces templates s'appliquent aux pages, que l'on trouve dans la section Pages du back-office.
Le template page.blade.php
s'applique à toutes les pages. Si on veut définir un template pour une page spécifique, on crééra un template nommé page-nompage.blade.php
.
# Single
Il s'agit des templates qui s'appliquent au éléments uniques.
single.blade.php
est le template qui gère l'affichage d'un article de blog et par défaut de tous les éléménts uniques.
Si on veut définir un template pour un autre type de custom post, par exemple un événément, on le nommera single-evenement.blade.php
ou de manière générale single-nom_du_custom_post.blade.php
.
# Archives
Les archives sont les pages qui liste plusieurs post d'une même catégorie. Par exemple la liste des articles de blog avec archive.blade.php
. Généralement on utilisera plutôt les templates de taxonomies tels que category.blade.php
, category-chaussures.blade.php
, ou encore author.blade.php
.
# Inclusion de templates, ou partials
Wordpress offre un mécanisme permettant d'importer un template dans un autre. L'équivalent dans Laravel Blade est appelé "partials". Par exemple pour afficher un article, on peut avoir un partial pour le header, le contenu, et le footer de l'article.
Dans Blade on utilise pour cela la directive @include
, par exemple @include('partials/entry-meta')
ou @include('partials.entry-meta')
(dans Blade on peut indifféremment remplacer les "/" par des points).
Le repertoire des partials est situé dans views
et le moteur de Blade sait qu'on fait référence au dossier views
lorsqu'on fait un @include
. Il n'est pas nécessaire d'indiquer le chemin entier depuis la racine du thème ou du site.
# WP Pusher
Plugin WP pour mettre à jour automatiquement des sites depuis un repo Git