Choses à faire après l'installation de Wordpress

Publié: 2022-02-26

Vous pouvez installer WordPress en 2 étapes simples, mais il est recommandé de modifier certains des paramètres par défaut pour optimiser les performances et également améliorer la sécurité de votre site Web WordPress.

Guide d'optimisation Wordpress

Optimisez votre installation WordPress

Ces suggestions ne s'appliquent qu'aux sites WordPress.org auto-hébergés et non aux blogs WordPress.com. De plus, je suppose que vous utilisez WordPress sur Apache sous Linux. Le guide est maintenant mis à jour pour WordPress 4.2. Commençons:

1. Déplacez le dossier de téléchargement de médias

WordPress stocke toutes vos images et fichiers téléchargés dans le dossier wp-content/uploads. Vous devez cependant déplacer ce dossier en dehors du dossier principal de WordPress, de préférence sur un sous-domaine. Ainsi, vos sauvegardes WordPress seront plus gérables (les fichiers et thèmes téléchargés peuvent être sauvegardés séparément) et, plus important encore, la diffusion d'images d'un domaine différent permettra des téléchargements parallèles dans le navigateur, améliorant le temps de chargement de la page.

Ouvrez votre fichier wp-config.php et ajoutez les lignes suivantes pour modifier l'emplacement du dossier wp-content. Vous pouvez également désélectionner l'option - "Organiser mes téléchargements dans des dossiers basés sur le mois et l'année".

 define( 'WP_CONTENT_URL', 'http://files.domain.com/media' ); define( 'WP_CONTENT_DIR', $_SERVER['HOME'] . '/files.domain.com/media' );

2. Supprimez les balises méta inutiles de l'en-tête WordPress

Si vous regardez le code source HTML de votre site WordPress, vous trouverez quelques balises méta dans l'en-tête qui ne sont pas vraiment nécessaires. Par exemple, la version du logiciel WordPress exécutée sur votre serveur peut être facilement récupérée en consultant votre en-tête source.

 <meta name="generator" content="WordPress 4.1" />

Cette information est un bon indice pour les pirates WordPress qui cherchent à cibler les blogs qui utilisent les versions plus anciennes et moins sécurisées du logiciel WordPress. Pour supprimer complètement le numéro de version et les autres métadonnées non essentielles de votre en-tête WordPress, ajoutez cet extrait au fichier functions.php trouvé dans votre dossier de thèmes WordPress.

 remove_action( 'wp_head', 'wp_generator' ) ; remove_action( 'wp_head', 'wlwmanifest_link' ) ; remove_action( 'wp_head', 'rsd_link' ) ;

3. Empêchez les gens de parcourir vos dossiers

Puisque vous ne voudriez pas que quiconque parcoure vos fichiers et dossiers WordPress à l'aide de la vue de l'explorateur dans les navigateurs Web, ajoutez la ligne suivante à votre fichier .htaccess qui existe dans votre répertoire d'installation WordPress.

 Options All -Indexes

Assurez-vous également qu'il y a un index.php vide dans les dossiers wp-content/themes et wp-content/plugins de votre répertoire WordPress.

4. Désactiver le HTML dans les commentaires WordPress

La zone de commentaire de WordPress permet aux commentateurs d'utiliser des balises HTML et ils peuvent même ajouter des hyperliens dans leur commentaire. Les commentaires ont rel=nofollow mais si vous souhaitez interdire complètement le HTML dans les commentaires WordPress, ajoutez cet extrait à votre fichier functions.php.

 add_filter( 'pre_comment_content', 'esc_html' );

Mise à jour : remplacement de wp_specialchars par esc_html car le premier est obsolète depuis WordPress 2.8+

5. Désactivez les révisions de publication dans WordPress

WordPress inclut une fonction de révision de document utile pour vous aider à suivre les modifications apportées aux modifications de publication et vous pouvez également revenir à n'importe quelle version précédente de vos articles de blog. Les révisions de publication augmentent cependant la taille de votre table WordPress wp_posts car chaque révision signifie une ligne supplémentaire.

Pour désactiver les révisions de publication dans WordPress, ouvrez le fichier wp-config.php dans votre répertoire WordPress et ajoutez la ligne suivante :

 define( 'WP_POST_REVISIONS', false);

Alternativement, si vous souhaitez conserver la fonctionnalité Post Revisions, vous pouvez simplement limiter le nombre de révisions de publications que WordPress stocke dans la base de données MySQL. Ajoutez cette ligne au fichier wp-config pour ne stocker que les 3 dernières modifications.

 define( 'WP_POST_REVISIONS', 3);

6. Modifier l'intervalle de post-enregistrement automatique

Lorsque vous modifiez un article de blog dans l'éditeur WordPress, il enregistre automatiquement vos brouillons au fur et à mesure que vous tapez, ce qui vous aidera à récupérer votre travail en cas de panne du navigateur. Les brouillons sont enregistrés toutes les minutes mais vous pouvez modifier la durée par défaut pour dire 120 secondes (ou 2 minutes) en ajoutant une ligne à votre fichier wp-config.php.

 define( 'AUTOSAVE_INTERVAL', 120 );

7. Cachez les flux RSS WordPress non essentiels

Votre installation WordPress génère plusieurs flux RSS - le flux de blog, les flux d'articles, le flux de commentaires, les flux de catégories, les flux d'archives, <link> balise méta. Si vous voulez juste faire connaître votre flux RSS principal et supprimer les autres flux du , ajoutez une ligne à votre fichier functions.php :

 remove_action( 'wp_head', 'feed_links', 2 ); remove_action( 'wp_head', 'feed_links_extra', 3 );

8. Maintenez un flux RSS unique, redirigez les autres

Dans l'étape précédente, nous avons simplement supprimé les flux RSS de l'impression dans l'en-tête du site, mais les flux RSS existent toujours. Si vous souhaitez n'avoir qu'un seul flux RSS servi via FeedBurner et désactiver tous les autres flux, ajoutez-le à votre fichier .htaccess. N'oubliez pas de remplacer l'URL du flux par la vôtre.

 <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_USER_AGENT} !^.*(FeedBurner|FeedValidator) [NC] RewriteRule ^feed/?.*$ http://feeds.labnol.org/labnol [L,NC,R=301] </IfModule>

9. Désactiver les astuces de connexion WordPress

Lorsque vous tapez un nom d'utilisateur inexistant ou un mot de passe incorrect lors de la connexion à WordPress, un message d'erreur très détaillé vous indique exactement si votre nom d'utilisateur est erroné ou si le mot de passe ne correspond pas. Cela pourrait donner un indice aux personnes qui tentent de s'introduire dans votre blog WordPress mais, heureusement, nous pouvons désactiver les avertissements de connexion.

 function no_wordpress_errors(){ return 'GET OFF MY LAWN !! RIGHT NOW !!'; } add_filter( 'login_errors', 'no_wordpress_errors' );

10. Activer l'authentification à 2 facteurs

Ceci est hautement recommandé. Si quelqu'un met la main sur vos informations d'identification WordPress, il aura toujours besoin de votre téléphone portable pour accéder à votre tableau de bord WordPress.

Contrairement à Dropbox ou Google, l'authentification en 2 étapes ne fait pas partie de WordPress mais vous pouvez toujours utiliser le plugin Authy pour activer l'authentification à 2 facteurs.

11. Modifier la structure du permalien

N'utilisez pas la structure Permalink par défaut de WordPress car elle est mauvaise pour le référencement. Allez dans Options -> Permaliens dans votre tableau de bord WordPress et changez votre structure de permaliens WordPress en quelque chose comme :

 Option 1. /%post_id%/%postname% Option 2. /%category%/%postname%/%post_id%/

12. Ajouter des icônes favicon et tactiles

Votre thème WordPress peut même ne pas inclure de références au favicon (favicon.ico) ou aux icônes tactiles Apple, mais les navigateurs Web et les lecteurs de flux peuvent toujours les demander à votre serveur. Il est toujours préférable de signifier un dossier que de renvoyer un 404.

Tout d'abord, créez un fichier favicon.ico 16x16 et un fichier apple-touch.png 144x144 et téléchargez-les dans le répertoire d'accueil de votre blog. Ajoutez ensuite cette ligne à votre .htaccess pour rediriger toutes les demandes d'icônes Apple Touch vers ce fichier particulier.

 RedirectMatch 301 /apple-touch-icon(.*)?.png http://example.com/apple-touch.png

13. Interdire l'indexation des scripts WordPress

Vous voulez que Google et les autres moteurs de recherche explorent et indexent les pages de votre blog, mais pas les différents fichiers PHP de votre installation WordPress. Ouvrez le fichier robots.txt dans votre répertoire de base WordPress et ajoutez ces lignes pour empêcher les bots d'indexer les éléments principaux de WordPress.

 User-agent: * Disallow: /wp-admin/ Disallow: /wp-includes/ Disallow: /wp-content/plugins/ Disallow: /wp-content/themes/ Disallow: /feed/ Disallow: */feed/

14. Faire de l'administrateur un abonné

Si votre nom d'utilisateur WordPress est « admin », créez un nouvel utilisateur et accordez-lui des privilèges d'administrateur. Maintenant, déconnectez-vous de WordPress, connectez-vous en tant que nouvel utilisateur et modifiez le privilège de l'utilisateur "admin" d'administrateur à abonné.

Vous pouvez même envisager de supprimer l'utilisateur "admin" et de transférer tous les messages/pages existants au nouvel utilisateur. Ceci est important pour des raisons de sécurité car vous ne voulez pas que quiconque devine le nom d'utilisateur qui dispose des privilèges d'administrateur pour votre installation WordPress.

15. Masquer les sitemaps XML des moteurs de recherche

Les sitemaps XML aideront les moteurs de recherche à mieux explorer votre site, mais vous ne voulez pas que les moteurs de recherche affichent réellement votre sitemap dans les pages de résultats de recherche. Ajoutez ceci à votre .htaccess pour empêcher l'indexation des sitemaps XML.

 <IfModule mod_rewrite.c> <Files sitemap.xml> Header set X-Robots-Tag "noindex" </Files> </IfModule>

16. N'utilisez pas la recherche WordPress

Assurez-vous que la recherche sur votre site est alimentée par Google Custom Search et n'utilisez pas la fonction de recherche intégrée de WordPress. La recherche WordPress renvoie des résultats moins pertinents et l'autre avantage est qu'elle réduira la pression sur votre serveur/base de données WordPress puisque les requêtes de recherche seront traitées via Google.

Alternativement, si vous envisagez de continuer avec la recherche intégrée de WordPress, utilisez le plugin Nice Search. Il crée de meilleurs permaliens pour vos pages de recherche WordPress (/search/tutorials vs /?s=tutorials).

17. Mot de passe Protégez le répertoire wp-admin

Vous pouvez facilement ajouter une autre couche de sécurité à votre installation WordPress en protégeant par mot de passe le répertoire wp-admin. Vous devrez cependant vous souvenir de deux ensembles d'informations d'identification pour vous connecter à WordPress - votre mot de passe WordPress et le mot de passe qui protège le répertoire wp-admin.

18. Enregistrez les erreurs 404 dans Google Analytics

Les erreurs 404 sont une occasion manquée. Vous pouvez utiliser des événements dans Google Analytics pour enregistrer vos erreurs 404, y compris des détails sur le site référent qui pointe vers cette page 404 de votre site. Ajoutez cet extrait dans votre fichier 404.php.

 <? if (is_404()) { ?> _gaq.push(['_trackEvent', '404', document.location.pathname + document.location.search, document.referrer, 0, true]); <? } ?>

19. Supprimer les thèmes inutilisés et les plugins WordPress

Les plugins et thèmes inutilisés n'affecteront pas les performances de votre site WordPress, mais l'objectif devrait être d' avoir le moins de code exécutable possible sur notre serveur. Désactivez et supprimez donc les éléments dont vous n'avez plus besoin.

20. Empêchez WordPress de deviner les URL

WordPress a une étrange habitude de deviner les URL et fait des erreurs dans la plupart des cas. Laisse-moi expliquer. Si un utilisateur demande l'URL labnol.org/hello mais si cette page n'existe pas, WordPress peut rediriger cet utilisateur vers labnol.org/hello-world simplement parce que les URL ont des mots communs.

Si vous souhaitez que WordPress arrête de deviner les URL et émette à la place une erreur 404 Not Found pour les pages manquantes, placez cet extrait dans le fichier functions.php :

 add_filter('redirect_canonical', 'stop_guessing'); function stop_guessing($url) { if (is_404()) { return false; } return $url; }

21. Définir les en-têtes d'expiration pour le contenu statique

Les fichiers statiques hébergés sur votre site Web WordPress - comme les images, CSS et JavaScript - ne changeront pas souvent et vous pouvez donc définir des en-têtes d'expiration pour eux afin que les fichiers soient mis en cache sur le navigateur de l'utilisateur. Ainsi, lors des visites ultérieures, votre site se chargera relativement plus rapidement car les fichiers JS et CSS seront extraits du cache local.

Reportez-vous au Boilerplate HTML5 pour plus de détails sur la configuration des en-têtes d'expiration et de compression pour les performances. Si vous utilisez un plugin de mise en cache comme W3 Total Cache, le contrôle du cache est géré par le plugin lui-même.

 ExpiresActive On ExpiresByType image/gif "access plus 30 days" ExpiresByType image/jpeg "access plus 30 days" ExpiresByType image/png "access plus 30 days" ExpiresByType text/css "access plus 1 week" ExpiresByType text/javascript "access plus 1 week"

23. Améliorer la sécurité de WordPress

J'ai discuté de la sécurité de WordPress en détail plus tôt. L'essentiel est que vous devez ajouter des clés secrètes à votre fichier wp_config.php, installer un plugin de surveillance de fichiers (comme Sucuri ou WordFence), changer le préfixe de table WordPress et également limiter les tentatives de connexion pour empêcher les attaques par force brute.

24. Désactiver l'édition de fichiers dans WordPress

Lorsque vous êtes connecté à votre tableau de bord WordPress en tant qu'administrateur, vous pouvez facilement modifier l'un des fichiers PHP associés à vos plugins et thèmes WordPress. Si vous souhaitez supprimer la fonctionnalité d'édition de fichiers (un point-virgule manquant peut supprimer votre site WordPress), ajoutez cette ligne à votre fichier wp-config.php :

 define( 'DISALLOW_FILE_EDIT', true );

25. Supprimer les paramètres de requête supplémentaires des URL

Si l'adresse Web de votre site WordPress est abc.com, les internautes peuvent toujours accéder à votre site s'ils ajoutent quelques paramètres de requête à l'URL. Par exemple, abc.com/?utm=ga ou abc.com/?ref=feedly sont, techniquement parlant, des URL complètement différentes mais fonctionneront très bien.

C'est mauvais car cela dilue votre équité de lien (SEO) et, dans une situation idéale, vous voudriez que toutes les URL pointent vers la version canonique. Ajoutez ce petit extrait à votre fichier .htaccess et il supprimera les paramètres de requête inutiles de toutes les requêtes entrantes.

 <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{QUERY_STRING} !="" RewriteCond %{QUERY_STRING} !^p=.* RewriteCond %{QUERY_STRING} !^s=.* RewriteCond %{REQUEST_URI} !^/wp-admin.* RewriteRule ^(.*)$ /$1? [R=301,L] </IfModule>

26. Supprimer la barre d'administration

Il s'agit d'une fonctionnalité ennuyeuse de WordPress - elle ajoute une barre d'administration en haut de toutes les pages et qui est visible par tous les utilisateurs connectés à leurs comptes WordPress.com. Cela peut cependant être supprimé en ajoutant une ligne à votre fichier functions.php.

 add_filter('show_admin_bar', '__return_false');

27. Traiter avec les bloqueurs de publicités

Certains lecteurs de votre blog utilisent peut-être un logiciel de blocage des publicités pour bloquer la diffusion des publicités à partir de votre site. Vous pouvez proposer un contenu alternatif comme une liste de vos publications WordPress populaires ou intégrer une vidéo YouTube à la place.

28. Insérez une image de marque dans votre flux RSS

Vous pouvez facilement ajouter le logo de votre marque à tous les articles du flux RSS. Et puisque ceux-ci sont servis à partir de votre serveur, vous pouvez servir une image différente pour les sites qui plagient votre contenu en republiant votre flux. Ajoutez ceci à votre fichier functions.php.

 function add_rss_logo($content) { if(is_feed()) { $content .= "<hr><a href='blog_url'><img src='logo_url'/></a>"; } return $content; } add_filter('the_content', 'add_rss_logo'); add_filter('the_excerpt_rss', 'add_rss_logo');

29. Installez les plugins essentiels

Voici une liste complète des plugins WordPress que j'utilise et recommande.

30. Restez connecté plus longtemps

Si vous cochez l'option "Se souvenir de moi", WordPress vous gardera connecté pendant 2 semaines. Si vous ne vous connectez à WordPress qu'à partir d'un ordinateur personnel, vous pouvez facilement prolonger la date d'expiration du cookie d'autorisation de connexion en l'ajoutant à votre fichier functions.php.

 add_filter( 'auth_cookie_expiration', 'stay_logged_in_for_1_year' ); function stay_logged_in_for_1_year( $expire ) { return 31556926; // 1 year in seconds }

31. Supprimer les émoticônes WordPress

À partir de la v4.2, WordPress insère désormais les fichiers liés aux Emoji dans l'en-tête de votre site Web. Si vous ne prévoyez pas d'utiliser les émoticônes et les emojis dans votre blog, vous pouvez facilement vous débarrasser de ces fichiers supplémentaires en ajoutant les lignes suivantes à votre fichier functions.php :

 remove_action( 'wp_head', 'print_emoji_detection_script', 7 ); remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );

32. Suivez vos pages imprimées

Vous pouvez utiliser Google Analytics pour suivre l'utilisation de l'impression de votre site Web. Lorsqu'un visiteur imprime une page de votre site Web, un événement est enregistré dans Analytics et vous saurez quel type de contenu est envoyé à l'imprimante. De même, vous pouvez également ajouter un code QR aux pages imprimées et les utilisateurs peuvent facilement trouver l'URL source en scannant le code avec leur téléphone portable.

Voir aussi : Commandes Linux pour WordPress