La reconception de StevePavlina.com – Partie 7

les plug-insLe présent article est le 7e de la série de 9 articles portant sur la reconception de StevePavlina.com.

Les plug-ins WordPress

En plus d’écrire deux de mes propres plug-ins WordPress, une partie importante de ce projet consistait à rechercher, à essayer, à sélectionner et à configurer d’autres plug-ins en vue de les utiliser sur mon site.

Le répertoire de plug-ins WordPress compte actuellement plus de 50 000 plug-ins. Cela fait trop de plug-ins à parcourir un par un. Je me base donc sur quelques règles simples pour trouver de bons plug-ins :

  • Les recommandations personnelles – J’accorde beaucoup de valeur aux recommandations d’autres personnes, en particulier d’autres développeurs et utilisateurs de WordPress. J’ai découvert des dizaines de plug-ins différents lors des réunions mensuelles du groupe de rencontre WordPress à Vegas. L’immeuble où nous nous rencontrons dispose d’un service Internet gratuit fourni par l’un des plus grands centres de données du monde ; donc c’est super rapide. Ainsi, quand les gens partagent des plug-ins lors de ces réunions, je les installe et je les essaie souvent sur mon ordinateur portable en même temps alors que la réunion est toujours en cours. Pourquoi attendre ?
  • Le nombre élevé de téléchargements – J’évite généralement les plug-ins avec moins de 10 000 installations. J’accorde une attention particulière aux plug-ins qui ont plus de 100 000 installations. Si beaucoup de gens utilisent un plug-in, c’est bon signe. J’ai trouvé quelques bons plug-ins en faisant des recherches de mots-clés dans le répertoire des plug-ins WordPress (ou directement dans mon panneau d’administration qui utilise le même répertoire). Ensuite, je cherche des listes avec un nombre élevé de téléchargements.
  • Les notes élevées – En général, je ne prends pas la peine d’essayer un plug-in si les utilisateurs ne lui donnent pas au moins une note de 4 sur 5. Je fais aussi attention au nombre d’utilisateurs qui ont noté le plug-in. J’aime voir au moins des dizaines voire des centaines de notes. S’il n’y a que quelques notes, alors je m’abstiens d’installer le plug-in en question.
  • La date de la dernière mise à jour – Si je vois qu’un plug-in n’a pas été mis à jour depuis des mois ou même des années, je me demande s’il a été abandonné par son développeur, ce qui pourrait à la longue impliquer des risques potentiels de sécurité et de compatibilité pour moi si je l’utilise. Je préfère les plug-ins avec des mises à jour récentes, car cela m’indique que le développeur travaille toujours activement sur son produit. Certains plug-ins qui incorporent des fonctionnalités très simples n’ont pas besoin de mises à jour fréquentes ; je prends aussi cela en considération.

Toutes ces informations sont disponibles sur les listes publiques pour chaque plug-in dans le répertoire des plug-ins WordPress. Ce sont des directives simples qui relèvent du bon sens pour les gens qui utilisent WordPress depuis un certain temps déjà. Elles m’aident à éviter de parier sur des plug-ins de mauvaise qualité.

J’essaie aussi d’éviter les plug-ins qui ont un système de verrouillage excessif, ce qui fait que si je les utilise pendant un certain temps, il serait difficile de les remplacer par un autre plug-in concurrent. C’est l’une des raisons pour lesquelles j’évite généralement les plug-ins qui pourraient ajouter des shortcodes dans mes publications. Si plus tard je désinstalle de tels plug-ins, les shortcodes ne fonctionneront plus, et mes lecteurs verront des bouts de code dans mes publications. Je devrais alors supprimer ou remplacer ces shortcodes dans tous les textes dans lesquels je les ai utilisés.

Je recherche des plug-ins qui peuvent être utilisés sur une longue période. Je me demande : « Ce plug-in sera-t-il encore disponible dans cinq ans ? ». Si j’ai des doutes par rapport à cela, j’en choisis un autre. Plus tard, je peux toujours jeter un coup d’œil à un plug-in prometteur pour voir s’il gagne du terrain auprès des utilisateurs.

Certains plug-ins prennent moins d’une minute pour être installé et activé, et ils ajoutent des fonctionnalités sans configuration nécessaire. D’autres plug-ins ont des écrans de configuration basiques qui vous permettent de personnaliser quelques options. D’autres encore ont plusieurs écrans d’options complexes à configurer. J’aime généralement passer en revue toutes les options et les personnaliser juste après avoir installé un plug-in. Cela m’aide à comprendre les capacités du plug-in.

Parfois, lorsque je veux étendre ou modifier les fonctionnalités un peu plus que ne le permettent les options intégrées, par exemple utiliser un plug-in de manière à le faire fonctionner pour des publications personnalisées comme mes Nouveautés et Mises à jour au lieu des publications ordinaires, je fais quelques recherches Google. De nombreux plug-ins peuvent être modifiés d’une manière qui n’est pas incluse dans la documentation standard, généralement parce qu’il faut un peu plus de compétences pour appliquer lesdites modifications.

Permettez-moi de partager avec vous quelques plug-ins spécifiques que j’utilise et les raisons pour lesquelles je les ai choisis.

Jetpack

Jetpack est un ensemble qui contient une dizaine de plug-ins créés et gérés par l’équipe WordPress. En fait, Jetpack est un moyen de donner aux blogs en hébergement indépendant comme le mien l’accès à des fonctionnalités qui étaient auparavant uniquement disponibles que pour les sites hébergés sur WordPress.com.

Après avoir installé Jetpack, vous pouvez activer ou désactiver chaque plug-in de Jetpack de façon individuelle. La plupart des plug-ins de Jetpack sont gratuits, mais il y a aussi quelques-uns qui sont payants. Pour le moment, je n’utilise que les plug-ins gratuits de Jetpack.

Je ne vais pas parler de tous les plug-ins de Jetpack que j’utilise parce que la plupart d’entre eux sont assez basiques, mais je vais tout de même vous parler de quelques-uns des plug-ins les plus importants que j’ai activés.

Photon est le Réseau de Distribution de Contenu (RDC) gratuit de Jetpack qui permet d’accélérer le chargement des images en distribuant les images de votre site sur différents serveurs à travers le monde. Étant donné que mon site ne contient que très peu d’images, je n’ai pas vraiment remarqué l’augmentation de vitesse apportée par ce plug-in. Toutefois, Photon pourrait se révéler très utile pour un site utilisant beaucoup d’images. Vous pouvez l’activer d’un simple clic ; il est donc très facile à utiliser.

Protect vous aidera à protéger votre site contre les attaques par force brute. Selon mes statistiques, Protect a déjà bloqué plus de 5300 tentatives de connexions malveillantes sur mon site au cours des trois dernières semaines. Il s’agit principalement de bots qui parcourent Internet à la recherche de blogs WordPress vulnérables. Je vous en dirai plus sur la sécurité un peu plus loin dans cet article.

Monitor signale les temps d’arrêt du site. Si votre site est hors ligne pour une raison quelconque, le serveur de Jetpack vous enverra un courriel en quelques minutes pour vous le faire savoir.

Subscriptions permet aux gens de s’abonner à votre blog par courriel. J’ai récemment ajouté cette fonctionnalité ; vous pouvez donc désormais recevoir mes nouveaux billets de blog par courriel si vous le souhaitez.

Jetpack a bien plus de fonctionnalités que celles que j’ai mentionnées. Je vous encourage à y jeter un coup d’œil. Certaines d’entre elles seraient particulièrement utiles si vous voulez connecter votre site à vos comptes de réseaux sociaux, par exemple pour partager automatiquement les liens de vos nouveaux messages sur Twitter et Facebook.

Les articles connexes

Il existe un plug-in qui ajoute des titres d’articles connexes au bas de chaque article. Quand une personne a fini de lire un article, elle peut vouloir lire d’autres articles sur des sujets connexes. J’utilise un plug-in comme celui-ci depuis des années, et c’est l’une des raisons pour lesquelles beaucoup de gens m’ont dit qu’ils ont l’habitude de passer des heures d’affilée sur mon site.

Il y a de nombreuses années, un jeune homme m’a dit qu’il était tombé sur mon site Web alors qu’il cherchait sur Internet un moyen de se suicider. Il a fini par passer 5 à 6 heures d’affilée sur le site, et une fois la lecture terminée, il a ressenti un sens plus profond du but et a décidé de vivre. J’ai donc de bonnes raisons de prendre cet aspect de mon site très au sérieux.

Le plug-in que j’utilisais pour cette fonctionnalité semble avoir été abandonné par son développeur, alors j’ai décidé d’en chercher un qui est toujours maintenu.

Contextual Related Posts est un plug-in populaire qui offre cette même fonctionnalité. Il semblait très bien s’installer et se configurer, mais bien que j’ai essayé par de nombreuses façons différentes de le faire fonctionner, je n’ai jamais réussi à lui faire générer correctement les articles connexes. Il semblait pratiquement afficher le même petit sous-ensemble de suggestions sur chaque article, et pour certains articles, il n’y avait carrément pas d’articles connexes proposés. J’ai cherché de l’aide en ligne et je suis tombé sur une autre personne qui semblait avoir des problèmes similaires et qui n’avait pas d’autre solution que d’essayer tout ce que j’avais déjà essayé, comme régénérer l’index et installer un plug-in sœur pour essayer une autre approche. J’ai également estimé qu’il s’agissait d’une ressource inutile, alors compte tenu de ces problèmes, j’ai laissé tomber CRP et j’ai décidé de trouver une alternative. Je craignais en effet que les problèmes réapparaissent plus tard même si je parvenais à finalement le faire fonctionner. Je ne pouvais pas prédire que tout se passerait bien si je l’utilisais.

J’ai fini par utiliser le plug-in Related Post de Jetpack pour cette fonctionnalité et cela a fonctionné à merveille. Pour générer les articles connexes, Jetpack télécharge tout le contenu de vos articles sur son serveur infonuagique, compresse les résultats, puis les rend disponibles sur votre site. Ce plug-in a produit des suggestions décentes pour chaque article. Après avoir soumis mon site à l’indexation, je pense que les résultats étaient disponibles en moins d’une heure.

Certaines personnes sont sensibles au fait que Jetpack enregistre toutes les publications pour les traiter sur ses serveurs. Toutefois, si vos publications sont déjà publiques, quel est le problème ? N’importe qui pourrait tout aussi bien récupérer votre contenu de vos pages publiques ; il existe des outils pour le faire. Un tel cynisme me semble mal placé.

Malheureusement, le style par défaut de Jetpack pour ses articles connexes ne concorde pas du tout avec le style de mon nouveau site Web. Je trouvais qu’il avait l’air moche et qu’il était visuellement plus compliqué que nécessaire ; chaque article connexe était en effet placé dans une case distincte. J’ai essayé de modifier le style par défaut avec mon propre CSS, ce qui s’est révélé être un énorme défi. Puis j’ai réalisé que je pouvais simplement désactiver tout le CSS de Jetpack pour le remplacer par le mien, ce qui s’est révélé bien plus facile et plus compact que d’essayer de le contourner. J’ai aussi fait passer de trois à sept le nombre par défaut d’articles connexes supportés par Jetpack, afin que les gens aient plus d’options. Trois articles connexes semblent peu à mes yeux.

Les statistiques du trafic

Si vous aimez les statistiques, alors Google Analytics Dashboard for WP est un très bon plug-in pour vous. Vous devez créer un compte Google Analytics pour l’utiliser. Je l’utilise depuis un bon moment, et cela m’a aidé à avoir une meilleure idée quant aux tendances du trafic sur mon site. Il inclut un widget de barre d’administration WordPress qui me permet de voir les statistiques de trafic pour n’importe quelle page de mon site que je suis en train de parcourir.

J’étais vraiment intéressé par les statistiques du trafic quand j’ai commencé à bloguer. Après quelques années, cela a commencé à m’ennuyer et je les consultais à peine ; il m’arrivait même de faire entre 6 et 12 mois sans y jeter un œil. Maintenant que le nouveau site est en ligne, je m’intéresse de nouveau à la façon dont les gens interagissent avec le site et les pages sur lesquelles ils passent le plus de temps.

Il y a quelques tendances intéressantes que je peux remarquer en consultant les statistiques de mon site :

  • Les 10 pays qui visitent le plus mon site sont les États-Unis, le Royaume-Uni, le Canada, l’Inde, l’Australie, l’Allemagne, les Philippines, l’Afrique du Sud, la Chine et Singapour, dans cet ordre. Environ 44% de mon trafic provient des États-Unis.
  • 47% des visiteurs accèdent à mon site sur un ordinateur de bureau ou portable ; 45% accèdent à mon site depuis un téléphone portable et 8% depuis une tablette.
  • Plus de la moitié des personnes qui accèdent à mon site depuis un appareil mobile utilisent un produit Apple pour le faire.
  • 46% des visiteurs sont de sexe féminin.
  • 61% des visiteurs ont entre 18 et 35 ans.
  • 49% des visiteurs utilisent Chrome, 31% utilisent Safari, et 7% utilisent Firefox comme navigateur Web.
  • Actuellement, la page cible la plus populaire sur mon site est celle de la Liste des valeurs qui a été republiée dans de nombreux livres. La deuxième plus populaire est celle de l’article « Comment vous endormir en moins de 30 secondes. » La troisième est celle qui héberge l’article « Le sommeil biphasique ».
  • Il y a souvent une augmentation du trafic pour les articles traitant du sommeil lorsqu’il fait nuit aux États-Unis.
  • Le réseau social qui génère le plus de trafic pour mon site est StumbleUpon qui surpasse le trafic généré par Facebook et Twitter combinés. Le second est Reddit. StumbleUpon m’a envoyé des millions de visiteurs depuis que j’ai commencé à bloguer.
  • Environ 500 à 600 personnes visitent chaque jour la page « Comment cuisiner le riz brun », un article que j’ai écrit en 2007 juste pour rire. C’est un article ridiculement basique, mais apparemment beaucoup de gens le consultent et le recherchent. En règle générale, la grande partie des 100 meilleurs termes de recherche qui redirigent vers mon site sont liés au riz brun. Cette sottise m’a finalement poussé à écrire une suite en 2012, « L’ultime bol de riz » ; un article qui n’est pas aussi populaire que l’article original, même s’il est plus intéressant.
  • Les articles sur la sexualité sont très populaires, en particulier « Commencer à jouer au jeu D/s » qui fait souvent partie du top 10 des articles chaque jour. Beaucoup de gens lisent les articles portant sur le sexe, mais presque personne ne les mentionne, n’y fait référence ou ne les partage sur les réseaux sociaux. Ce sera donc notre petit secret.

Si vous êtes vraiment intéressé par les données ou si vous cherchez à augmenter votre trafic et voulez voir comment vous vous en sortez, il existe de nombreux plug-ins de statistiques parmi lesquels vous pourrez choisir.

Le référencement (SEO)

Certaines personnes pensent qu’un bon référencement SEO est la solution à tous leurs problèmes de trafic. Je m’intéresse beaucoup plus à l’OVH : Optimisation pour Visiteurs Humains. Je m’en sors plutôt bien avec les moteurs de recherche en écrivant pour les êtres humains, pas pour les ordinateurs, et c’est mon approche depuis que j’ai commencé à bloguer. Avec cette nouvelle mise à jour du site Web, j’ai également beaucoup travaillé à l’amélioration de la conception du site pour les êtres humains.

J’ai vu toutes sortes de techniques SEO aller et venir au fil des années, et je les ai largement ignorées. Je pensais que Google finirait par rendre obsolètes la plupart des tentatives de contourner son système. Au lieu d’investir mon temps dans l’apprentissage de moyens temporaires pour obtenir un référencement important et non mérité par la manipulation, il me semblait plus facile de me concentrer sur mon objectif qui est d’aider les gens à grandir. J’ai pensé que si j’écrivais dans cette optique, il y aurait un flux décent de référencement, si l’on part du principe que le trafic de recherche est juste une autre forme de référencement.

Il y a des années, les experts en SEO avaient affirmé que c’était une erreur d’écrire de si longs articles. Ils avaient dit que je devrais écrire entre 300 et 500 mots pour être mieux classé dans les moteurs de recherche. Aujourd’hui, ils recommandent aux gens d’écrire des articles de 2000 mots parce qu’apparemment, les articles plus longs sont mieux référencés. Google ne redirige pas beaucoup de personnes vers des articles courts parce que les usines de contenu en ont produit des tonnes et s’en sont servis comme moyen de spammer Google.

Au lieu de vous donner le vertige en essayant de jouer au jeu du SEO, il est plus facile, plus honnête et plus efficace à long terme de concentrer votre énergie sur la création de valeurs pour de vrais êtres humains et de rendre votre site meilleur pour eux. Si vous rendez votre site utile pour les gens et que vous continuez d’apprendre et de vous améliorer, vous commencerez probablement à attirer des références et des redirections ; et le trafic des moteurs de recherche suivra.

De nos jours, il est intéressant de voir comment le SEO s’est de plus en plus éloigné des tactiques sournoises pour évoluer vers le travail en collaboration avec Google plutôt que l’inverse. Je pense qu’il est bon d’appliquer des techniques SEO honnêtes et coopératives. Évitez cependant les tactiques sournoises ; sinon, vous serez simplement pénalisé plus tard.

Si l’on considère que j’ai une stratégie SEO, alors cette stratégie consisterait à donner à mes articles des titres raisonnablement clairs. Cela implique notamment de ne pas être trop astucieux ou méticuleux dans le choix des titres. Si j’écris un article sur la gratitude, je pourrais lui donner un titre comme « La gratitude ». Si j’écris un article sur « Comment gagner de l’argent avec votre blog », alors cela pourrait en être le titre. J’aime faire en sorte qu’il soit facile pour les gens de dire ce dont un article parle simplement en regardant son titre. Il m’arrive parfois de succomber à un titre intelligent que j’aime vraiment, mais la plupart du temps, mes priorités sont la clarté et la convivialité. Quand je consulte le blog d’autres personnes, et que leurs titres ressemblent à des noms d’épisodes de la série télévisée The Walking Dead, je n’ai aucune idée de ce sur quoi porte le contenu. Cela rend le site peu convivial.

Si vous utilisez de bons titres pour les êtres humains, ils auront également tendance à être aussi bons pour les moteurs de recherche. Il existe d’autres techniques de référencement qui ont tendance à se décliner de cette manière. Au lieu de trop penser au SEO, pensez plutôt à rendre votre contenu meilleur et plus compréhensible pour les êtres humains. L’utilisation de bons sous-titres et d’un texte de lien clair sera bénéfique pour les êtres humains et vous aidera à mieux vous positionner dans les moteurs de recherche.

Prenez tout le temps que vous auriez autrement passé à essayer de comprendre les algorithmes de recherche de Google, et mettez-le au service de vos lecteurs. Même si vous n’avez que quelques lecteurs pour commencer, servez-les bien, et ils réfèreront probablement plus de gens vers votre site… à moins que vous n’écriviez que sur le sexe.

J’ai également mis les résolutions personnelles concernant mon style de vie devant le SEO. Mon site va probablement subir une certaine rétrogradation SEO étant donné que j’évite délibérément certaines fonctionnalités que Google chérit. Par exemple, j’ai quitté Twitter et Facebook en 2014, Google ne peut donc pas consulter mes comptes de réseaux sociaux qui n’existent pas.

Par conséquent, il se peut que mon contenu soit moins bien classé parce que je n’ai plus de comptes sur les réseaux sociaux populaires liés à ce site. À cause de cela, j’ai peut-être l’air moins légitime pour Google. Pour moi, c’est un compromis raisonnable. Je me plais à ne plus avoir à gérer des comptes sur les réseaux sociaux, et sans eux, je profite d’autres avantages, comme une meilleure productivité personnelle et plus de calme. Mieux, c’est vraiment bien de ne plus avoir à m’occuper des trolls.

Comme autre exemple, j’inclus toujours l’année et le mois dans les URL de mes articles de blog, et la date de publication est indiquée sous le titre de chaque article, ce qui peut entrainer une descente dans les classements, car le contenu pourrait être jugé trop vieux. Certains pensent qu’il est plus sage de ne pas inclure les dates dans l’URL ou l’article. Je pense que mon approche est la meilleure pour les êtres humains étant donné que certaines personnes peuvent vouloir savoir quand un article a été publié. J’aime souvent connaitre la date de publication des articles que je lis sur les sites d’autres personnes. Pour cette raison je mets la date juste en dessous du titre pour la rendre facile à repérer.

S’il y a un plug-in que je pourrais vous recommander ici, ce serait Yoast SEO qui est actuellement le plug-in SEO le plus populaire de WordPress. Je l’ai installé, mais je ne l’ai pas encore beaucoup utilisé. Je me contente de le laisser fonctionner automatiquement. Il a beaucoup de différentes fonctionnalités à explorer. Une chose que j’aime, c’est que ce plug-in me permet d’entrer ma propre méta description pour chaque page, de sorte que Google affichera cette courte description aux lecteurs au lieu de simplement prendre une partie aléatoire du texte.

Une autre chose que j’aime au sujet de Yoast SEO, c’est qu’il dispose d’un générateur de sitemap intégré. Un sitemap est une liste complète des URL de votre site qui permet aux moteurs de recherche de trouver et d’indexer facilement toutes vos pages de contenu public. De cette façon, Google n’oubliera aucune de vos pages, même si vous ne redirigez pas encore vers elles. Il s’agit d’une technique de référencement honnête et coopérative.

J’ai d’abord essayé d’utiliser le plug-in sitemap de Jetpack, mais pour une raison incompréhensible, ces sitemaps sont limités à 1000 liens. Jetpack, c’est tout simplement stupide ! Beaucoup de sites WordPress, y compris le mien, ont plus de 1000 pages de contenu. Par conséquent, mes sitemaps générés par Jetpack étaient toujours incomplets. J’ai essayé de chercher un code qui pourrait étendre cette limite, mais j’ai fait chou blanc. Heureusement, le générateur de sitemap de Yoast SEO n’a pas cette limitation. Je l’utilise donc pour mes sitemaps.

Réduire les erreurs 404

Pour être certain que les anciens liens vers le site ne disparaissent pas simplement, j’ai soigneusement mappé les anciennes URL vers les nouvelles et ajouté des redirections dans le fichier .htaccess. Il y a des plug-ins qui peuvent aider à faire cela, mais je préfère éditer le fichier .htaccess directement parce que c’est plus rapide pour moi.

C’était assez facile. Cela m’a simplement pris un peu de temps étant donné que j’ai dû passer en revue toutes les URL de l’ancien site et déterminer comment chacune devrait être reliée au nouveau site. J’ai fait cela en saisissant une liste de toutes les URL qui seraient modifiées. La plupart étaient d’anciens fichiers HTML qui étaient désormais gérés par WordPress sur le nouveau site.

J’ai également nettoyé le fichier .htaccess pour soigneusement subdiviser les redirections en sections avec des commentaires, ce qui facilite la gestion.

J’aime le fait que Yoast SEO s’intègre avec Google Search Console. Cela m’a montré beaucoup de pages d’erreurs 404 non trouvées sur lesquelles les gens atterrissaient en utilisant des URL incorrectes pour accéder à mon site. Grâce à cette information, j’ai pu apporter quelques modifications à mon fichier .htaccess en ajoutant quelques règles de redirection pour envoyer les gens vers les URL correctes qu’ils essayaient d’atteindre.

Voici quelques exemples de mauvais liens qui comportaient des erreurs 404 :

Certaines de ces erreurs peuvent s’être produites lorsque quelqu’un a partagé le lien dans un courriel et a commencé à saisir une autre phrase tout de suite sans ajouter un espace après l’URL.

Normalement, ces liens devraient rediriger vers des pages erreurs 404 parce qu’ils sont incorrects. C’est dommage parce que je sais quels devraient être les bons liens. Heureusement, avec quelques réglages simples du fichier .htaccess, il est possible de rediriger ces personnes vers les bonnes pages, leur permettant ainsi d’éviter les erreurs 404.

Ces liens mènent tous à des pages HTML sur mon ancien site qui ont depuis été transformées en publications WordPress et en pages avec des URL différentes. La redirection initiale pour l’article Faites-le maintenant ressemblait à ceci :

RewriteRule ^articles/do-it-now\.htm$ /blog/2005/11/do-it-now/ [R=301,L]

Malheureusement, la version erronée du lien ne correspondait pas à ce modèle, ce qui entrainait une erreur 404. Tout ce que j’avais à faire pour réparer cela, c’était de modifier la redirection :

RewriteRule ^articles/do-it-now\.htm /blog/2005/11/do-it-now/ [R=301,L]

Le seul changement à faire était de supprimer le caractère $. Ce caractère indique à la redirection que c’est la fin de l’URL. En le supprimant, je laisse le modèle ouvert à une extrémité, ce qui signifie qu’il pourrait y avoir des caractères supplémentaires après le .htm, et le modèle peut toujours correspondre.

Si vous avez deviné que le caractère ^ indique le début de l’URL (après le nom de domaine et la barre oblique), vous avez raison.

Et si vous vous demandez pourquoi le point est suivi d’une barre oblique inversée dans la règle, c’est parce qu’un point dans une expression régulière représente un caractère unique. En précédant le point d’une barre oblique inversée, je fais spécifiquement référence à un point, pas à n’importe quel autre caractère. Bien sûr, étant donné qu’un point correspondrait encore à n’importe quel caractère, cela fonctionnerait dans les deux sens.

Modifier mes règles de redirection pour les rendre plus résilientes signifie que moins de personnes rencontreront des erreurs 404. La plupart des gens qui bénéficient de cette redirection indulgente ne remarqueront même pas qu’ils avaient entré la mauvaise URL au départ.

En utilisant la fonction Search Console de Yoast SEO (ou en utilisant directement Google Search Console), je peux voir les endroits où les gens tombent sur des pages 404 erreurs, et si je peux penser à une bonne façon de modifier les règles de redirection pour les aider à atterrir sur la page prévue, tant mieux.

Encore une fois, il s’agit de l’Optimisation pour Visiteurs Humains. Les êtres humains font parfois des erreurs. Si nous pouvons rendre le comportement du serveur web un peu moins rigide, ces erreurs peuvent être contournées.

La mise en cache

Étant donné que WordPress utilise beaucoup PHP et MySQL, le site fonctionnerait un peu lentement si je n’utilisais pas un plug-in de mise en cache (ou un hôte qui fournit une mise en cache intégrée comme WP Engine). Mon site fonctionne actuellement sur un serveur dédié avec huit CPU, et lorsque je désactive le plug-in de mise en cache, je vois toujours la hausse de charge du serveur, ce qui signifie que le serveur fait beaucoup plus de traitement pour servir les pages. Cela peut ralentir sensiblement le site s’il y a beaucoup de trafic.

Au lieu d’avoir à exécuter du code PHP et à charger le contenu de la base de données sur chaque page vue, un plug-in de mise en cache enregistre une copie de la page lorsqu’elle est vue pour la première fois. Ensuite, il sert les copies sauvegardées aux futurs visiteurs. Servir une copie est beaucoup plus rapide que de régénérer la page à partir de zéro chaque fois.

Pensez au temps qu’il vous faudrait pour saisir une page de texte et l’imprimer. Maintenant, combien de temps faut-il pour imprimer une autre copie ? Il vous faut beaucoup moins de temps pour imprimer chaque copie supplémentaire en comparaison au temps que vous avez pris pour saisir le texte original, n’est-ce pas. Par défaut, WordPress régénère la copie originale à chaque affichage de page. Un plug-in de mise en cache lui apprend comment sauvegarder des copies et les servir, à moins que l’original ne vienne à être modifié.

Le plug-in de mise en cache que j’utilise depuis des années est WP Super Cache. C’est un cheval de trait stable et très rapide. La seule chose que je n’aime pas, c’est la conception vraiment hideuse de l’interface. Il y a beaucoup d’options, et même après avoir lu les descriptions, il est difficile de dire ce que certaines parmi elles font. Je pense que pour les nouveaux utilisateurs de WordPress, l’interface peut sembler un peu intimidante. Toutefois, vous devriez vous en sortir si vous maintenez simplement les options par défaut.

Un autre plug-in de mise en cache populaire est W3 Total Cache. Je l’ai essayé il y a longtemps, mais j’ai trouvé WP Super Cache plus rapide. J’ai vu une comparaison de vitesse détaillée qui a également conclu que WP Super Cache a surpassé W3 Total Cache sur un grand nombre de paramètres importants.

Si votre site n’enregistre pas beaucoup de trafic, vous n’aurez probablement pas besoin d’un plug-in de mise en cache. Par contre, il est certain que cela fait une différence lorsque votre site commence à ralentir en raison des niveaux de trafic élevés.

La sécurité

Se faire pirater son site est pour le moins embêtant. Cela m’est arrivé plusieurs fois, tant sur ce site que sur le site d’édition de jeux que j’avais jusqu’en 2006. Une fois, un hackeur a utilisé mon site pour essayer de distribuer des logiciels malveillants basés sur Windows aux personnes qui visitaient nos anciens forums de discussion. Je ne le savais même pas jusqu’à ce qu’un chercheur en sécurité m’en informe gentiment.

Pour le nouveau site, j’ai décidé de consacrer plus d’efforts à la sécurité étant donné que prévenir un piratage est généralement plus facile (et beaucoup moins agaçant) que de s’en remettre.

WordFence est un plug-in de sécurité complet que j’utilise et que je recommande actuellement. Étant donné que mon site est constamment attaqué par des bots qui essaient de le pirater, j’ai configuré WordFence pour qu’il soit encore plus dur qu’il ne l’est par défaut. Si WordFence détecte un comportement étrange de la part de visiteurs du site, il bloquera automatiquement de tels visiteurs.

WordFence peut même me montrer ces tentatives d’attaques en temps réel. Beaucoup de celles-ci proviennent de Chine et de Russie, mais aussi des États-Unis.

WordFence scanne automatiquement les fichiers de mon site Web tous les jours pour s’assurer qu’aucun n’a été modifié. Il compare tous mes fichiers WordPress aux fichiers WordPress originaux pour la version que j’utilise, et il m’avertit si quelque chose ne concorde pas. Il fait aussi la même chose pour tous les plug-ins que j’utilise, en supposant qu’ils se trouvent dans le répertoire des plug-ins WordPress. Il peut le faire pour vos thèmes également si vous utilisez un thème du répertoire thématique WordPress. WordFence effectue également des analyses supplémentaires, un peu comme un antivirus, pour détecter les logiciels malveillants, les infections et les vulnérabilités. S’il trouve quelque chose, il vous enverra un courriel pour vous faire savoir ce qu’il a trouvé.

WordFence dispose également d’intéressantes options de personnalisation qui permettent de détecter et de bloquer les tentatives de piratage. Je les ai paramétrés de façon beaucoup plus stricte que les paramètres par défaut, car en bloquant les attaques plus tôt, cela peut aussi faire tourner le site un peu plus vite. Pourquoi se donner la peine de servir des pages supplémentaires aux bots malveillants ?

Je n’utilise jamais le nom d’identification par défaut « administrateur » pour mon site WordPress. Je n’utilise pas non plus des noms d’utilisateurs qu’il est possible de deviner, comme des variantes de mon nom. En plus de tout cela, j’utilise un mot de passe difficile et long. Ainsi, si un visiteur se rend sur ma page de connexion WordPress et essaie de se connecter avec un nom comme stevepavlina, steve, pavlina, stevep ou spavlina, il sera immédiatement bloqué, car il n’existe aucun compte avec ces noms. Toute tentative de connexion avec de tels noms est un signe clair d’intention malveillante.

De plus, étant donné que je n’ai pas activé les commentaires sur mon site, aucun humain n’aurait jamais besoin d’accéder au fichier wp-comments-post.php. Pourtant, ce fichier sur mon site est constamment touché par des bots qui tentent d’envoyer des spams de commentaires. J’ai donc configuré WordFence de manière à bloquer immédiatement tout ce qui tente d’accéder à ce fichier. Il suffit de le charger pour déclencher un blocage immédiat.

WordFence a beaucoup d’autres fonctionnalités qui permettent de surprendre et bloquer une variété de vecteurs d’attaque. Par exemple, s’il voit un visiteur qui tombe sur beaucoup de pages erreurs 404, il y a fort à parier que ce dernier sonde le site à la recherche des failles de ce dernier. WordFence peut automatiquement détecter et bloquer un tel visiteur.

En visualisant les erreurs 404 que WordFence enregistrait, je pouvais voir ce que les visiteurs malveillants essayaient de faire. Beaucoup d’entre eux cherchent des plug-ins qui incluent un script de téléchargement de fichier intégré, et ils essaient de l’utiliser pour télécharger mon fichier wp-config.php, ce qui donnerait au hackeur mon nom d’utilisateur et mon mot de passe pour la base de données. Je ne sais pas le bien que cela leur ferait étant donné qu’ils auraient encore besoin d’accéder au serveur pour pouvoir utiliser ces informations. Peut-être que certaines personnes utilisent les mêmes identifiants et mots de passe aussi bien pour leur base de données WordPress que pour leur compte d’administration WordPress ou leur FTP. J’utilise des identifiants et des mots de passe différents pour chacun d’entre eux, ainsi donc une violation de l’un n’entrainerait pas automatiquement une violation de l’autre.

Une chose que je n’apprécie pas chez WordFence, c’est qu’il m’envoie parfois des courriels effrayants pour des problèmes mineurs. Il m’envoie des courriels avec des titres comme celui-ci : [Alerte Wordfence] Problèmes trouvés sur www.stevepavlina.com.

La première fois que j’ai reçu un tel courriel, quelques jours seulement après l’installation de WordFence, je me suis dit, oh non ! Ai-je déjà été piraté ? Le contenu du courriel me faisait aussi peur au début, car il était question d’un « problème critique » rencontré sur mon site. Cependant, le prétendu problème critique n’était en réalité qu’une mise à jour disponible pour l’un de mes plug-ins. C’est bien que WordFence soit à cheval sur la nécessité de s’assurer que je garde mes plug-ins à jour, mais je pense que le libellé de ces courriels pourrait être un peu moins alarmant.

C’est un peu comme si ma copine venait dans mon bureau et criait, « Steve ! Nous avons un sérieux problème ! J’ai faim ! »

Quelques jours plus tard, j’ai reçu un autre courriel de WordFence m’avertissant qu’il y avait quelques fichiers sur mon serveur qui semblaient malveillants. J’ai vérifié, mais c’était une fausse alerte. WordFence considérait par erreur certains de mes fichiers mis en cache comme étant malveillants, mais le code qu’il indexait était légitime et appartenait à un autre plug-in.

Les piratages se produisent souvent à cause de l’utilisation de plug-ins non sécurisés ou obsolètes. Je suis donc assez strict sur la mise à jour de mes plug-ins et sur l’utilisation de plug-ins de qualité qui bénéficient d’une bonne audience. La dernière fois que j’ai été piraté, c’était à cause d’un plug-in mal codé. J’avais connu quelques bugs avec ce plug-in plus tôt et je les ai signalés au développeur. J’ai aussi eu l’impression que le codage était un peu bâclé. J’aurais dû le remplacer, mais j’en étais malheureusement venu à me fier à ce plug-in pour certaines fonctionnalités importantes. C’est le genre d’erreur que j’aimerais éviter à l’avenir.

Même un plug-in désactivé peut créer une faille de sécurité si des problèmes sont détectés ultérieurement avec le plug-in et que son code se trouve toujours sur votre site. C’est une autre raison pour laquelle je préfère éviter les plug-ins potentiellement douteux qui semblent ne pas être régulièrement mis à jour.

J’apprécie le fait que WordFence soit constamment en train de surveiller, d’analyser et de bloquer les attaques. Si cela évite ne serait-ce qu’un seul piratage embêtant, c’est formidable. Mieux s’il arrivait que je me fasse pirater, il y a de fortes chances que cela soit détecté tôt.

Les boutons de partage sur les réseaux sociaux

Au moment où j’écris cet article, je n’ai aucun bouton de partage sur les réseaux sociaux sur le site. Je suis toutefois indécis en ce qui concerne ce sujet.

D’une part, ces boutons ajoutent de l’encombrement supplémentaire à chaque page. Je sens que leur absence confère à mon site une ambiance plus zen.

D’autre part, de tels boutons aident les gens à facilement partager les articles avec leurs amis, et les gens les utilisent énormément.

J’ai même reçu des courriels de quelques personnes qui m’ont demandé si je pouvais ajouter des boutons de partage sur les réseaux sociaux pour qu’elles puissent partager mes articles. Apparemment, certaines personnes ne se rendent pas compte qu’elles peuvent copier et coller le lien et le partager sur le service de leur choix. Cela m’amène donc à me poser la question de savoir si je ferais bien de rajouter ces boutons.

Ce genre de boutons était disponible sur chaque article et je les ai supprimés en 2014 quand j’ai quitté les réseaux sociaux. Je peux toutefois facilement les restaurer si les gens les aiment. Jetpack a un plug-in pour cela, mais je voudrais modifier un peu le rendu pour qu’il soit plus naturel pour mon site étant donné que le style par défaut est très moche.

Si vous avez une opinion à ce sujet, j’aimerais lire votre commentaire.

Les améliorations de la base de données

Pour une raison étrange, les tables de base de données de WordPress utilisaient à l’origine un jeu de caractères appelé latin1_swedish_ci lors de son premier lancement. Plus tard lorsque WordPress a changé de jeu de caractères, de nombreux blogueurs ont rencontré des problèmes techniques. J’avais rencontré des problèmes avec des caractères de langue étrangère qui n’apparaissaient pas correctement, comme c’était le cas notamment avec des mots tels que pâté ou jalepeño. J’aurais pu appliquer une correction temporaire, mais cette fois j’avais décidé de faire le travail correctement et de convertir la base de données entière au jeu de caractères utf8_unicode_ci.

Ce type de conversion implique un processus compliqué que WordPress explique en commençant avec la mise en garde suivante :

Note : Si vous ne connaissez rien en langage SQL et MySQL/MariaDB, vous ferez chou blanc. Le présent domaine relève du vaudou…

Heureusement, mes compétences en codification informatique étaient à la hauteur de la tâche, et j’ai réussi.

J’ai également apporté d’autres améliorations à la base de données, notamment la conversion du moteur de la base de données de toutes les tables de MyISAM en une version InnoDB plus moderne, la suppression des tables ajoutées par d’anciens plug-ins qui ne s’étaient pas effacés après leur désinstallation, et la correction de plusieurs autres problèmes.

Pour résoudre certains problèmes de base de données, j’ai utilisé le plug-in Better Search Replace. Cela a été particulièrement utile pour corriger les URL incorrectes dans la bibliothèque d’images WordPress. J’aime le fait que ce plug-in puisse faire une recherche sérialisée et des remplacements, ce qui était important pour traiter certaines données stockées dans les tables wp_postmeta et wp_options.

Le plug-in Query Monitor était utile lorsque je devais diagnostiquer des erreurs SQL que je voyais dans les rapports d’erreurs. Il m’a montré quelles requêtes SQL étaient en cours d’exécution sur chaque page et combien de temps elles prenaient pour s’exécuter.

La plupart des blogueurs n’auront pas à faire face à ce genre de problèmes. Ces problèmes se sont en grande partie accumulés parce que j’ai utilisé WordPress en permanence pendant tant d’années et que j’étais passé par des dizaines de cycles de mise à jour. Ce type de maintenance de base de données est un peu comme la rénovation d’une vieille voiture. Elle peut certes toujours fonctionner correctement malgré ses années, mais elle fonctionnera mieux après certaines réparations et mises à niveau.

Je ne suis pas très doué en matière de traitement de bases de données, j’ai donc dû rafraichir certaines anciennes compétences, particulièrement en langage SQL. J’y suis allé progressivement et j’ai fait des sauvegardes régulières en cours de route. J’ai accidentellement corrompu la base de données plus d’une fois pendant le processus, mais la restauration à partir d’une sauvegarde n’a pris que quelques secondes. Ce n’était donc pas grave. Je suis heureux d’avoir pris le temps de faire ce travail supplémentaire, car la base de données est maintenant en bien meilleur état qu’elle ne l’était lorsque j’avais commencé. Elle est plus rapide et elle devrait être plus facile à entretenir à l’avenir.

Personne ne voit la base de données à part moi, mais son nettoyage m’a donné un sentiment de fierté profonde par rapport à mon travail. Je me suis senti en partie inspiré par le désir de Steve Jobs de peaufiner même les parties que les gens ne verront pas. M’en tenir à une norme déraisonnablement élevée comme celle-ci prend certes plus de temps, mais j’ai acquis une meilleure compréhension des avantages de cette philosophie.

D’une certaine façon, cela semble plus facile si je suis fier de tous les aspects de mon travail, pas seulement des parties que les gens voient. Il est plus simple d’être cohérent à tous les niveaux parce que vous appliquez alors le même état d’esprit à absolument tout, au lieu d’avoir besoin d’être animé de différents états d’esprit pour différentes parties du projet. Cela permet également de développer la patience qui peut être une qualité difficile à acquérir, mais très bénéfique à cultiver.

Autres améliorations

Étant donné que certaines personnes aiment imprimer mes articles, j’ai écrit quelques codes CSS supplémentaires pour formater les articles de manière à ce qu’ils soient beaux quand ils sont imprimés, sans avoir à inclure d’éléments de navigation. J’ai également codé les images de manière à ce qu’elles ne soient pas séparées en deux sur les bordures de la page. J’ai stylisé les pages FAQ pour développer automatiquement les éléments FAQ lors de l’impression et pour essayer d’éviter de séparer ces éléments entre les pages imprimées. C’était facile à faire en utilisant Print Preview pour tester mes modifications sans gaspiller de papier. J’ai aussi appris quelques nouvelles techniques CSS au cours de ce processus.

J’ai ajouté la fonctionnalité d’article aléatoire en utilisant le plug-in Better Random Redirect. Son code est assez simple étant donné qu’il ne fait qu’une seule tâche. Par conséquent, ce plug-in n’a pas besoin d’être mis à jour tout le temps. C’est bien que ce plug-in fonctionne aussi avec la mise en cache, sinon les gens accèderaient au même article chaque fois.

Étant donné que WordPress a une fonction de recherche intégrée manifestement horrible, notamment parce qu’il liste les résultats par date au lieu de considérer leur pertinence, j’ai amélioré la fonction de recherche avec un plug-in appelé Relevanssi qui fournit beaucoup plus de résultats pertinents. Relevanssi me montre aussi les termes sur lesquels les gens font des recherches (anonymement, sans indiquer le nom de chaque utilisateur).

Actuellement, les 15 principaux termes de recherche que les gens ont utilisés dans la recherche intégrée du site sont :

  1. sommeil
  2. but
  3. croyances
  4. sommeil biphasique
  5. emploi
  6. réalité subjective
  7. sommeil polyphasique
  8. revenus
  9. sexe
  10. peur
  11. végétalisme
  12. loi de l’attraction
  13. discipline
  14. collège
  15. argent

J’ai écrit des articles sur tous ces sujets, ce qui veut dire que les gens devraient pouvoir trouver des informations utiles à partir de leurs recherches.

Je peux aussi voir quelles sont les recherches qui échouent, notamment celles dues à des fautes de frappe telles que : la soltude, les synchonicités, le sommeil polifasique, la caféne, la réallisation, la dicipline, les prisoners. Cela me montre que je pourrais peut-être rendre le site plus résilient grâce à une fonction de recherche qui peut mieux s’adapter aux fautes de frappe.

Je partagerai encore plus de plug-ins que j’utilise pour l’optimisation de la vitesse dans le prochain article.

Continuez vers le 8e article de la série.

Note : Cet article est une traduction de l’article Redesigning StevePavlina.com – Part 7 de Steve Pavlina. C’est donc lui qui s’exprime dans le « je » de cet article !

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *