Dans les coulisses de Jetpack Search : une interview exclusive

Jetpack Search s’est révélé très populaire auprès des propriétaires de sites WordPress — et ce, pour de bonnes raisons. Cet outil relativement récent a la capacité presque magique de comprendre la véritable intention d’un visiteur et de lui proposer exactement ce qu’il recherche, en une fraction de seconde. Parfois, le résultat parfait s’affiche même avant que l’internaute ait fini de saisir sa requête.

Résultat ? Les visiteurs restent plus longtemps sur les sites. Ils lisent davantage, consultent plus de pages et achètent davantage de produits. 

Si vous n’avez pas lu Kylie M. Interiors raconte son expérience, prenez le temps de le faire. Cette entreprise incroyable, située dans une petite ville du Canada, reçoit plus de 50 000 pages vues chaque jour. Elle avait besoin d’une extension de recherche fiable et ses rêves sont devenus réalité grâce à Jetpack Search. Extrait de l’article :  

Le mari de Kylie depuis 15 ans, Tim, gère les opérations de l’entreprise et administre leur site WordPress.  « Au bout du compte, Jetpack Search était la meilleure solution que j’aie trouvée », a déclaré Tim. « Nous sommes euphoriques de voir à quel point cela fonctionne. » 

« Tim ne m’avait pas dit qu’il avait changé la fonction de recherche », a ajouté Kylie. « Un jour, j’ai effectué une recherche et je me suis dit : “J’ai obtenu ce que je voulais !” »

Kylie a décrit la nouvelle fonctionnalité de recherche comme un « changement radical » pour son entreprise. « Maintenant, vous pouvez trouver en un clin d’œil n’importe lequel des 300 articles que vous recherchez », a-t-elle déclaré. « J’en parle à mes clients lors de mes consultations et je leur dis de l’utiliser parce que ça marche. »

Compte tenu du succès de l’extension, nous avons voulu mettre en lumière les héros qui œuvrent en coulisses. Comment fonctionne-t-elle exactement ? Quelle est son histoire ? 

Nous avons interviewé Jason Moon, qui a écrit la majeure partie du code de Jetpack Search, ainsi que les autres membres de l’équipe, Chris Rosser et Robert Felty. Nous avons également recueilli les commentaires de Greg Brown, qui a contribué à concevoir Jetpack Search et à concrétiser l’idée.

Une interview de l’équipe Jetpack Search : les coulisses de son développement

Quelle était l’idée à l’origine de Jetpack Search ? Pourquoi était-il important de créer un outil comme celui-ci pour WordPress ?

Jason Moon : 

Je pense que beaucoup de personnes se tournent vers Jetpack Search pour deux grandes raisons : les performances et les fonctionnalités. 

Commençons par les performances. Au fil du temps, à mesure qu’un site WordPress accumule des données indexables, la fonctionnalité de recherche intégrée peut se détériorer. Cela est principalement dû au fait que la recherche de WordPress repose sur MySQL, qui n’est pas particulièrement rapide pour la recherche en texte intégral à laquelle nous nous sommes habitués sur le Web moderne.

Les concepteurs de produits et les ingénieurs ont une formule : « Les performances, c’est l’expérience utilisateur. » Lorsque vous proposez à vos utilisateurs une expérience de recherche médiocre, cela se répercute sur toute votre activité et nuit à votre marque comme à vos résultats.

En déléguant ce problème de performances à Jetpack Search, nous le prenons en charge pour vous. En coulisses, nous utilisons Elasticsearch pour indexer les données recherchables et les fournir à vos visiteurs presque instantanément, quel que soit leur nombre sur un site. 

Une autre raison importante pour laquelle un propriétaire de site peut faire appel à nous est la fonctionnalité de recherche supplémentaire qui fait défaut au cœur de WordPress. Nous avons lancé une nouvelle version de Jetpack Search l’année dernière, dotée d’une interface JavaScript moderne, mais légère, qui s’intègre parfaitement à tout thème WordPress. Cette interface propose une recherche au fil de la saisie qui actualise dynamiquement les résultats lorsque vous modifiez différents éléments de votre requête, notamment le terme recherché et les filtres.

Qui est à l’origine de cette idée et de la décision de la concrétiser ?

Jason : 

Le principal défenseur de la recherche chez Automattic est sans doute Greg Ichneumon Brown, qui joue un rôle essentiel dans toutes les initiatives liées à la recherche au sein de l’entreprise. Bien qu’il ne fasse pas actuellement partie de l’équipe Jetpack Search, Greg reste l’un de nos principaux conseillers techniques pour les décisions relatives aux produits.

Greg Brown regardant son téléphone sur un canapé
Greg Ichneumon Brown

Greg a également pris la tête de la création de ce qui allait devenir l’équipe Jetpack Search, et nous lui devons donc une grande part du mérite.

Le développement de cet outil au sein d’Automattic vous procure-t-il certains avantages (ressources, structure, etc.) par rapport à d’autres organisations ? 

Greg Ichneumon Brown : 

Comme WordPress.com gère déjà un volume considérable de trafic et exploite ses propres centres de données dans le monde entier, Jetpack Search peut s’appuyer sur toute cette infrastructure existante. Alors que de nombreuses solutions similaires nécessitent de fonctionner sur des plateformes cloud assez coûteuses (AWS ou Google Cloud), Jetpack Search peut réduire et simplifier considérablement notre modèle tarifaire, puisque tous les systèmes concernés nous appartiennent.

Jetpack Search s’appuie également largement sur les statistiques de votre site concernant les contenus populaires, afin de mieux mettre les utilisateurs en relation avec les contenus auxquels ils sont le plus susceptibles de s’intéresser. Nous exploitons Jetpack Stats depuis plus de dix ans, et cette infrastructure peut être coûteuse et difficile à mettre à l’échelle pour les sites plus importants.

L’autre avantage ici est la confidentialité. Le fait de fournir les contenus de recherche et les statistiques via les mêmes systèmes signifie que vous ne partagez vos données qu’avec une seule entreprise. Obtenir ces mêmes systèmes auprès d’autres entreprises implique souvent de partager vos données avec plusieurs entités, et presque toujours avec Google et Amazon. Nous sommes fiers de proposer une alternative et nous adoptons une approche très différente en matière de confidentialité.

Combien de personnes ont contribué au développement ? Combien de temps cela a-t-il pris ? 

Jason : 

Bien que la recherche soit une compétence fondamentale d’Automattic depuis plus de dix ans, le développement de notre dernière version de Jetpack Search a véritablement commencé fin 2019. Au départ, Jetpack Search n’était que l’un des projets de l’équipe Data Products d’Automattic. Au fil du temps, nous sommes devenus une équipe indépendante.

Je ne pense pas que nous ayons jamais été plus de cinq personnes à travailler simultanément sur le projet. L’équipe du projet a commencé avec trois personnes et, même si des collègues sont partis et arrivés au cours des deux dernières années, nous avons réussi à maintenir la même taille d’équipe ! 

Chris Rosser travaillant sur son ordinateur
Chris Rosser

Avez-vous des anecdotes intéressantes sur le processus de développement ?

Chris Rosser :

Nous avons organisé notre dernier meetup avant la pandémie à Boulder, en décembre 2019. L’équipe de recherche, trois designers et l’incroyable chien de Jason, Tera, qui est devenu la mascotte de notre projet, y ont participé. Ce furent quelques jours productifs et vraiment agréables, et nos discussions nous ont aidés à résoudre les derniers éléments de l’énigme de la recherche instantanée. Bien que nous soyons une entreprise entièrement à distance, les meetups ont toujours fait partie de la formule d’Automattic. Cette semaine nous rappelle à quel point la collaboration en personne peut être utile et combien nous regrettons tous vraiment de nous voir uniquement par écran interposé.

Le chien de Jason, Tera, allongé sur le sol
Tera, le chien de Jason

Quels sont les objectifs futurs de cette fonctionnalité ? Comment est-elle gérée aujourd’hui ?

Jason :

Nous avons actuellement deux projets en préparation pour Jetpack Search :

  1. Amélioration de l’intégration avec WooCommerce. Notre équipe apprécie beaucoup WooCommerce et aimerait faire du filtrage des produits une fonctionnalité prioritaire.
  2. Personnalisation améliorée grâce aux blocs Gutenberg. Nous sommes convaincus que Gutenberg représente l’avenir de la personnalisation de WordPress et, à ce titre, nous prévoyons de permettre la configuration de Jetpack Search à l’aide de blocs dès que possible.

En ce qui concerne la maintenance, nous sommes en contact étroit avec nos collègues de l’assistance, qui nous tiennent informés des problèmes rencontrés par les utilisateurs. En plus des retours des clients, nous disposons également d’une liste interne de bugs et de fonctionnalités pour orienter notre feuille de route.

Jason, en tant que personne à l’origine de la plupart du code, quelles expériences passées vous ont préparé à ce projet ?

Jason :

J’ai eu la chance de faire mes premières armes dans des start-ups au début de ma carrière, ce qui m’a permis de développer une solide polyvalence pour aborder de nouveaux problèmes. Cependant, je me suis beaucoup spécialisé dans le développement JavaScript au cours des quatre dernières années environ, en me concentrant sur la création d’interfaces prêtes à être utilisées par les clients. J’ai donc été chargé de concevoir l’architecture et de développer la majeure partie du code qui constitue l’essentiel de notre produit Jetpack Search récemment lancé.

Une grande partie de l’infrastructure Elasticsearch nécessaire à Jetpack Search était déjà en place lorsque j’ai rejoint le projet. Nous avons bénéficié d’un excellent soutien de la part des experts des technologies de recherche et d’Elasticsearch chez Automattic, ce qui a permis à notre équipe de se concentrer principalement sur l’expérience utilisateur.

Un entretien avec l’équipe Jetpack Search — en coulisses de l’outil

Qu’est-ce qui distingue Jetpack Search des autres outils de recherche pour WordPress ?

Jason :

Je dirais que notre principal avantage différenciateur tient au fait que nous proposons une solution hébergée. Nous déportons toute opération liée à la recherche de votre serveur WordPress vers notre grappe de serveurs répartis dans le monde entier. Notre infrastructure, qui traite régulièrement 20 milliards de requêtes chaque mois, garantit à vos visiteurs une expérience de recherche toujours rapide.

Illustration de Jetpack Search

Est-il facile pour les débutants de configurer le service sans connaître le code ?

Jason :

L’accessibilité et la simplicité d’utilisation sont nos principaux objectifs pour Jetpack Search. Pour commencer, il suffit d’installer l’extension Jetpack et de souscrire un abonnement à Jetpack Search. Ensuite, nous nous chargeons de tout ce qui est nécessaire pour avancer, de l’indexation de votre site à la configuration de vos premiers filtres de recherche.

Cependant, nous savons qu’une solution universelle ne convient pas à la plupart de nos clients. Pour y remédier, nous avons également intégré de nombreuses possibilités de personnalisation à Jetpack Search. Les propriétaires de sites peuvent adapter différents aspects de l’expérience de recherche à leur audience. Une boutique en ligne, par exemple, pourrait trouver notre présentation des résultats « produit » en grille bien mieux adaptée que notre présentation « minimaliste » en lignes.

Quels types d’algorithmes Jetpack Search utilise-t-il pour déterminer les résultats ?

Robert Felty :

Jetpack Search examine l’ensemble du contenu d’un article donné, notamment son titre, son extrait, son corps, ses commentaires, ses étiquettes, etc. Nous utilisons ensuite des algorithmes de classement conformes aux normes du secteur pour mesurer la pertinence d’un article par rapport à un terme de recherche donné.

Par exemple, si vous recherchez « the cat », nous cherchons tous les articles contenant « the » et « cat ». Cependant, comme « the » est un mot très courant en anglais, son poids est nettement inférieur à celui de « cat ». Nous examinons également la fréquence d’apparition du terme recherché dans chaque article. Si l’article A mentionne « cat » plusieurs fois, tandis que l’article B ne le mentionne qu’une seule fois, nous attribuons un poids plus élevé à l’article A. Nous utilisons également les données de Jetpack Stats pour prendre en compte le nombre de consultations récentes d’un article afin d’essayer de fournir les résultats de recherche les plus pertinents à l’utilisateur.

Comment fonctionnent les filtres ?

Jason :

Actuellement, Jetpack Search vous permet de filtrer les résultats par date, taxonomie (c’est-à-dire catégorie ou étiquette) et type d’article. Cela inclut les types d’articles personnalisés et les taxonomies personnalisées. Tout est également configurable selon vos préférences : si vous utilisez des étiquettes sur votre site, mais pas de catégories, vous pouvez afficher l’option permettant de filtrer par étiquette, mais pas par catégorie, ou inversement, ou les deux ! Et n’oublions pas que ce filtrage est également extrêmement rapide grâce à la mise en cache intelligente des filtres.

Comment fonctionne l’indexation en temps réel ? Quels en sont les avantages ?

Greg :

C’est une excellente question — je pourrais écrire un article entier uniquement sur ce sujet. En fait, c’est déjà fait. Je ne suis peut-être pas objectif, mais si vous souhaitez en savoir plus sur l’indexation Elasticsearch en temps réel sur WordPress.com — c’est un excellent point de départ.

Pouvez-vous nous en dire plus sur la correction orthographique automatique ? Comment Jetpack Search sait-il quoi corriger ?

Jason :

Lorsque vous recherchez un terme qui ne renvoie aucun résultat, nous recherchons automatiquement des mots similaires et renvoyons ces résultats à la place. Par exemple, si vous avez un blog consacré à la cuisine et qu’une personne recherche « vegetible » (mal orthographié), Jetpack Search renverra à la place les résultats correspondant à « vegetable » (correctement orthographié).

Quels types de sites bénéficieraient le plus de Jetpack Search ?

Jason :

Si la recherche de votre site commence à ralentir, je pense que c’est le moment idéal d’essayer Jetpack Search. Selon les caractéristiques de votre hébergement, vous pourriez rencontrer des problèmes de performances avec seulement quelques pages ! Voici ma règle générale pour vérifier la présence de ce goulot d’étranglement : si le chargement de la recherche de votre site prend plus d’une demi-seconde, il est temps de chercher une autre solution.

Par ailleurs, si l’expérience utilisateur statique offerte par la recherche intégrée ne vous satisfait pas, Jetpack Search pourrait parfaitement vous convenir. Notre interface propose une conception universelle compatible avec n’importe quel thème WordPress, grâce à des paradigmes Web de pointe comme le rendu réactif.

Nous aimons penser que nous avons fixé le prix de Jetpack Search de manière compétitive et que notre approche privilégiant les performances séduit les clients à la recherche d’une expérience de recherche moderne et instantanée.

Ce sont les droïdes que vous recherchez

Il est facile de voir la passion qui anime le développement de Jetpack Search. Beaucoup d’amour a été consacré à son développement, et beaucoup d’amour continue de l’animer aujourd’hui. Fondé sur l’infrastructure d’Automattic, il est agile, efficace et sécurisé. De plus, il fournit des résultats précis (et utiles !) — à une vitesse fulgurante

Avons-nous précisé qu’il est aussi incroyablement abordable ? Donnez un avantage à votre site — obtenez Jetpack Search, dès aujourd’hui.

Découvrez les avantages de Jetpack

Découvrez comment Jetpack peut vous aider à protéger, accélérer et développer votre site WordPress.

Découvrir les offres

Une question ?

Les commentaires sont fermés pour cet article, mais nous sommes toujours là pour vous aider ! Consultez le forum d’assistance et nous répondrons volontiers à toutes vos questions.

Voir le forum d’assistance