Bien qu’il soit tout à fait possible d’interagir avec votre site Web WordPress uniquement par le biais du tableau de bord, il est essentiel de comprendre comment votre installation est structurée, et quels fichiers remplissent quelles fonctions, afin d’atteindre un plus haut degré de contrôle sur votre site. À tout le moins, cette compréhension vous permettra de résoudre plus facilement les erreurs qui pourraient survenir.
Chaque installation de WordPress commence avec la même structure de répertoire et les mêmes fichiers de base. Chaque plugin ou thème que vous installez, chaque script que vous ajoutez, et chaque écran d’erreur qui apparaît, est possible grâce à l’épine dorsale du CMS. Si l’idée de fouiller dans ces fichiers peut sembler intimidante au début, c’est beaucoup plus simple qu’il n’y paraît.
Au cours de cet article, nous allons passer en revue le contenu des dossiers les plus importants de WordPress, en accordant une attention particulière aux fichiers de base qui alimentent votre site.
Présentation de la structure des répertoires de WordPress
La structure des fichiers WordPress est honnêtement assez simple aux niveaux supérieurs. Vous avez votre dossier public_html, où se trouvent ses trois dossiers clés, ainsi que de nombreux fichiers importants tels que wp-config.php et .htaccess. Même si c’est la première fois que vous fouillez dans votre installation WordPress, il y a de fortes chances que ces noms vous soient déjà familiers.
Pour accéder à ces fichiers et dossiers, vous devez utiliser soit le gestionnaire de fichiers cPanel de votre service d’hébergement, soit un client FTP (File Transfer Protocol). Dans le cadre de ce guide, nous utiliserons FileZilla. Quel que soit votre choix, voici à quoi doit ressembler l’intérieur de votre dossier public_html:
Avant de nous intéresser à ces trois dossiers de premier niveau, jetons un coup d’oeil à certains des fichiers qui se trouvent dans public_html. Tout d’abord, nous avons .htaccess (abréviation de « hypertext access »). Il vous permet de contrôler la structure des permaliens, les fichiers, les dossiers et leur accès dans votre installation WordPress. Un fichier .htaccess impeccable doit ressembler à ceci :
# BEGIN WordPress <IfModule mod_rewrite.c> ; RewriteEngine On RewriteBase / RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-f !-d RewriteRule . /index.php [L] </IfModule> ; # END WordPress
Ensuite, nous avons index.php, qui sera retourné comme page d’accueil par défaut à moins qu’il ne soit remplacé par un fichier front-page.php ou home.php:
Un autre fichier crucial dans ce répertoire est wp-config.php. Il gère la configuration de base de WordPress, et inclut vos paramètres MySQL, les clés secrètes, et le préfixe des tables de la base de données. Voici à quoi doivent ressembler les paramètres de votre base de données :
// ** Paramètres MySQL - Vous pouvez obtenir ces informations auprès de votre hébergeur ** // /** Le nom de la base de données pour WordPress */ define('DB_NAME', 'notarealname') ; /** Nom d'utilisateur de la base de données MySQL */ define('DB_USER', 'notarealuser') ; /** Mot de passe de la base de données MySQL */ define('DB_PASSWORD', 'notarealpassword') ; /** Nom d'hôte de la base de données MySQL */ define('DB_HOST', 'localhost') ;
Parmi les autres fichiers notables de ce répertoire figurent wp-activate.php, wp-signup.php et wp-signup.php, qui gèrent ensemble le processus d’inscription, de connexion et de confirmation de l’utilisateur. Nous avons également wp-comments-post.php (qui gère la fonction de commentaire et empêche les doublons de commentaires), et wp-settings.php, qui configure certaines variables courantes de WordPress.
Après avoir couvert ces éléments, passons au premier des dossiers de niveau supérieur, wp-admin.
Le dossier wp-admin
Comme son nom l’indique, il s’agit du dossier qui contient les fichiers permettant d’administrer votre site en tant qu’utilisateur de WordPress. Par exemple, admin.php (qui est au cœur du dossier), permet de se connecter à la base de données, d’afficher le tableau de bord de WordPress, et d’exécuter un certain nombre d’autres fonctions clés, comme vérifier si un utilisateur donné est en fait l’administrateur en question. Si c’est le cas, le script fait appel au fichier wp-load.php, qui charge à son tour le fichier wp-config.php:
/** * Dans les écrans d'administration de WordPress * * depuis la version 2.3.2 */ si ( ! defined( 'WP_ADMIN' ) ) { define( 'WP_ADMIN', true ) ; } if ( ! defined('WP_NETWORK_ADMIN') ) define('WP_NETWORK_ADMIN', false) ; si ( ! defined('WP_USER_ADMIN') ) define('WP_USER_ADMIN', false) ; if ( ! WP_NETWORK_ADMIN && ; ! WP_USER_ADMIN ) { define('WP_BLOG_ADMIN', true) ; } if ( isset($_GET['import']) && ; !defined('WP_LOAD_IMPORTERS') ) define('WP_LOAD_IMPORTERS', true) ; require_once(dirname(dirname(__FILE__)) . '/wp-load.php') ;
Si vous prêtez attention aux noms des fichiers de ce dossier, vous constaterez que la plupart d’entre eux correspondent aux fonctions que vous avez appris à connaître sur le tableau de bord de WordPress. Par exemple, profile.php gère l’écran d’administration du profil de l’utilisateur, tandis que theme-install.php contrôle le panneau d’installation du thème, et plugin-install.php fait de même pour le panneau des plugins.
Quant aux autres dossiers importants à l’intérieur de wp-admin, images est rempli d’images utilisées dans le panneau d’administration de WordPress, css et js sont consacrés au code CSS et aux scripts JavaScript respectivement, et network abrite les fichiers PHP nécessaires au fonctionnement de WordPress multisite.
Le dossier wp-content
Il s’agit de la section du back-end où vous passerez probablement la plupart de votre temps au cours de votre relation avec WordPress. Ses deux fonctions les plus populaires sont situées à l’intérieur – bien sûr, nous parlons des thèmes et des plugins :
Le dossier des plugins
Chaque plugin que vous téléchargez sur WordPress aura son propre sous-dossier dans le dossier plugins, comme le montre l’exemple ci-dessus. Le contenu de chacun d’entre eux varie d’un plugin à l’autre. Voici, par exemple, un bref aperçu du contenu du dossier du plugin Akismet:
Comme nous l’avons mentionné dans de multiples articles de dépannage tels que Getting the 403 Forbidden Error in WordPress, Here’s How to Fix It et How to Fix the 500 Internal Server Error on Your WordPress Website, la désactivation des plugins via FTP peut être une étape nécessaire pour résoudre les problèmes de compatibilité.
Le dossier des thèmes
Comme pour les plugins, chaque thème que vous installez sur votre site WordPress obtient son propre dossier correspondant sur le back-end, que vous avez probablement déjà vu, à moins que vous n’ayez téléchargé chaque thème via le tableau de bord plutôt que par FTP.
La première chose que vous verrez probablement en accédant au dossier d’un thème donné est un ensemble de fichiers PHP, qui constituent ses éléments constitutifs. En prenant Divi comme exemple, vous trouverez dans son dossier principal un fichier 404.php, un fichier functions.php, unfichier sidebar.php et un fichier style.css, entre autres. Divi comprend également des dossiers distincts pour ses fichiers css, images et js – ce qui est à peu près standard pour la plupart des thèmes. Cependant, quelques autres dossiers sont clairement uniques au thème, comme epanel et et-pagebuilder – dont vous reconnaîtrez les noms si vous avez déjà eu l’occasion de bricoler avec Divi :
Le dossier wp-includes
Le dernier dossier de premier niveau du répertoire WordPress est wp-includes, et c’est un gros dossier. Alors que wp-admin contient tous les fichiers nécessaires à l’exécution des fonctions d’administration, et que wp-content stocke tous vos thèmes et plugins, wp-includes est ce qui fait fonctionner le reste de votre site comme une horloge.
Ce dossier est, en fait, si crucial que c’est là que sont stockés la plupart des fichiers de base de WordPress. Dès le départ, une nouvelle installation de WordPress comprendra plus de 140 fichiers différents dans le répertoire principal, et 14 dossiers différents (au moment de la rédaction de cet article), dont les certificats, les polices, les js, le thème-compat et les widgets.
Ces sous-dossiers, cependant, ne sont pas aussi importants que les fichiers inclus dans le répertoire principal, comme functions.php. Ce petit fichier est considéré comme faisant partie du noyau de WordPress, et il est rempli d’un grand nombre de petites fonctions qui permettent à votre installation WordPress de fonctionner. Par exemple, ces lignes de code sont les premières choses que vous verrez si vous ouvrez le fichier dans un éditeur de texte, et elles sont juste une fonction ordinaire destinée à transformer les dates dans différents formats :
/** * Convertit une chaîne de date donnée dans un format différent. * * $format doit être soit une chaîne de format de date PHP, par exemple 'U' pour un horodatage Unix * ou 'G' pour un timestamp Unix en supposant que $date est GMT. * * Si $translate est vrai, alors la date donnée et la chaîne de format seront passées à date_i18n * seront transmises à date_i18n() pour la traduction. * * depuis 0.71 * * @param string $format Format de la date à retourner. * @param string $date Chaîne de date à convertir. * @param bool $translate Indique si la date de retour doit être traduite. Par défaut true. * @return string|int|bool Chaîne de date formatée ou timestamp Unix. Faux si $date est vide. */ function mysql2date( $format, $date, $translate = true ) { if ( empty( $date ) ) retourne false ; if ( 'G' == $format ) return strtotime( $date . ' +0000' ) ; $i = strtotime( $date ) ; si ('U' == $format ) return $i ; if ( $translate ) return date_i18n( $format, $i ) ; sinon return date( $format, $i ) ; }
Parmi les autres fichiers clés, citons cache.php (qui gère les processus d’ajout et de suppression de données dans le cache, ainsi que sa fermeture ou sa réinitialisation), links.php (qui comprend les fonctions qui alimentent la fonction de liens de WordPress) et version.php (qui indique votre version de WordPress).
Conclusion
Bien que le fait de se plonger dans l’arrière-plan de votre installation de WordPress soit naturellement effrayant, avec un peu de pratique et un peu d’imagination, vous connaîtrez bientôt par cœur les tenants et aboutissants de ses répertoires et de ses fichiers principaux. Ces connaissances vous seront sans aucun doute très utiles à l’avenir, que vous ayez besoin de résoudre une erreur, d’implémenter une simple modification ou simplement d’étonner vos invités avec votre connaissance encyclopédique de WordPress (et une seule de ces applications est fausse !).
Chaque voyage commence par quelques étapes, et dans votre cas, ce sont les suivantes :
- Familiarisez-vous avec la structure des répertoires de WordPress, en particulier les dossiers wp-admin, wp-content et wp-includes.
- Familiarisez-vous avec les fichiers de base de WordPress, notamment wp-config.php, functions.php et .htaccess.
Avez-vous déjà cassé involontairement votre installation WordPress en fouinant dans son back-end ? Ne vous inquiétez pas, nous sommes tous passés par là. Inscrivez-vous et partagez vos expériences avec nous dans la section des commentaires ci-dessous !