Vue lecture

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.

WP2Shell - La faille qui permet de pirater WordPress sans aucun plugin

Vous avez un site sous WordPress ? Alors lâchez tout ce que vous faites deux minutes, parce que là c'est du sérieux !!

Cette nouvelle attaque baptisée WP2Shell permet de compromettre une installation Wordpress sans passer par le moindre plugin. Heureusement, un patch est sorti en urgence le 17 juillet !

En temps normal, quand une alerte sécu tombe sur WordPress, le fautif c'est un plugin tiers vérolé , un truc installé un soir de flemme et oublié depuis des lustres. Mais cette fois, rien de tout ça puisque le trou de sécu se trouve dans le cœur de WordPress lui-même.

Dans le détail, WP2Shell enchaîne deux failles. La première, CVE-2026-63030 , est une confusion de route dans l'API REST batch, sur l'endpoint /wp-json/batch/v1. La seconde, CVE-2026-60137 , est une injection SQL bien planquée dans le paramètre author__not_in de WP_Query. Chacune dans son coin, c'est déjà vilain, mais mises bout à bout, elles offrent une exécution de code à distance.

Pas de compte, pas de mot de passe, et encore moins de plugin exotique mais simplement quelques requêtes HTTP et hop, c'est plié !

Côté versions, la chaîne complète touche WordPress 6.9.0 à 6.9.4 et 7.0.0 à 7.0.1. Si votre site est dans cette fourchette, vous êtes donc exposé. Les correctifs sont arrivés avec les versions 6.9.5 et 7.0.2. Et si vous vous traînez encore une vieille 6.8.x, sachez que seule l'injection SQL vous concerne potentiellement mais qu'elle a été patchée depuis la version 6.8.6.

Derrière cette trouvaille, on trouve Adam Kues, chercheur chez Assetnote (une branche de Searchlight Cyber), qui a assemblé et documenté toute la chaîne avant de la remonter proprement via le programme HackerOne de WordPress. Les détails techniques les plus croustillants restent sous le coude le temps que la planète patche mais l'équipe a mis en ligne un outil, wp2shell.com , pour vérifier si votre site est vulnérable. Allez-y, ça coûte rien !

Autre signal qui ne trompe pas, WordPress.org a déclenché les mises à jour automatiques forcées sur les sites concernés. Une mesure réservée aux failles vraiment graves, comme à l'époque où la faille critique de Really Simple Security avait exposé des millions de sites. Il y a donc de bonnes chances que votre installation toute pourrie dont vous ne vous occupez pas parce que vous êtes un mauvais webmaster ^^ ait déjà été rustinée toute seule. Vraiment, vous ne méritez pas les équipes sécu de Wordpress ^^

Mais ne pariez pas votre site là-dessus non plus... Car si vous avez désactivé les mises à jour auto (et beaucoup d'hébergeurs et d'admins le font), personne n'aura rien poussé chez vous. Sans oublier qu'un bout de PoC circule déjà sur GitHub (les chercheurs gardent pour eux le dernier maillon vers la RCE, mais ça n'arrêtera pas longtemps les motivés), et les scans automatisés ont commencé.

En attendant de patcher, bloquez surtout donc l'accès anonyme à l'endpoint batch de l'API REST via votre WAF ou votre plugin de sécu. Attention, pas seulement la forme /wp-json/batch/v1 : sa variante ?rest_route=/batch/v1 doit sauter aussi, sinon autant laisser la clé sur la porte. Cloudflare propose d'ailleurs des règles toutes prêtes. Et pour durcir le reste de votre config, ma vieille série sur le sujet reste d'actualité.

En tout cas, quand on sait qu'il y a +500 millions de sites actuellement propulsés par Wordpress, même s'ils ne sont pas tous concernés par cette faille, ça reste une surface d'attaque gigantesque !!

Bref, filez vérifier votre version. Sous 6.9.5 ou 7.0.2, vous mettez à jour et vous bloquez le batch en attendant. Deux minutes chrono, et votre site dort tranquille !

Source : Security Affairs

Jetpack et son IA imposée - Comment tout débrancher

Si vous tournez sous WordPress avec Jetpack, vous avez sûrement vu débarquer l'AI Assistant d'Automattic sans rien demander à personne. Un bouton IA qui se pointe dans l'éditeur, des suggestions générées un peu partout, un machin pour générer des vidéos à partir d'articles et le tout activé d'office, même sur les comptes gratuits.

Le pire, c'est que ça reste à moitié verrouillé derrière un abonnement payant qu'on vous colle sous le nez, avec seulement 20 malheureuses requêtes gratuites avant de devoir sortir la carte bleue. Donc autant dire qu'on peut rien tester que c'est déjà plié. Du coup, ça encombre l'interface pour rien comme ici :

Et pour le virer proprement depuis les réglages... bah y'a pas, forcement.

Vous pouvez toujours aller bidouiller dans les modules Jetpack un par un, l'assistant IA, lui, reste accroché comme une moule à son rocher. Croyez-moi, j'ai tout exploré et la seule vraie solution tient en une seule ligne. Vous l'ajoutez via un plugin comme Code Snippets, ou directement dans un fichier mu-plugins ou functions.php de votre thème si vous êtes à l'aise avec le code :

add_filter( 'jetpack_ai_enabled', '__return_false' );

Et hop, toutes les fonctionnalités IA de Jetpack dégagent d'un coup, y compris la fameuse bulle de chat dans l'éditeur. C'est le hook officiel, documenté chez Jetpack depuis la version 11.8, donc rien de bricolé là-dedans. C'est juste que vous coupez le robinet à conneries à la source.

Maintenant, si toucher au PHP vous file de l'urticaire, sachez qu'il existe aussi un petit plugin baptisé Turn Off AI Features qui fait exactement le même boulot avec un simple interrupteur. C'est un peu la même chose que quand on débranche l'IA imposée de Windows 11 , afin de reprendre la main sur sa propre machine.

Quand on voit que Firefox a réussi à mettre un seul bouton pour tout couper, on se dit qu'Automattic pourrait faire un effort.

Source

Migrer de WordPress vers Hugo

Passer du système de gestion de contenu WordPress au générateur de sites statiques Hugo c’est changer de paradigme, il faut savoir ce que l’on va gagner et ce que l’on va perdre et il faut retrousser ses manches, un jour viendra où cela se fera en un clic, mais ce n’est pas aujourd’hui !

Sommaire

Avant même de se poser la question comment, on peut se poser la question : pourquoi ?

Avec WordPress chaque page repose sur du PHP, un programme est exécuté qui peut faire de nombreuses actions, il y a une base de données. WordPress est un des classiques LAMP (Linux, Apache, MySql, PHP) et consorts, il nécessite l’installation de multiples composants. Quand le contenu à délivrer doit s’adapter au contexte utilisateur et à d’autres facteurs, c’est approprié, pour un site de commerce ça l’est, s’il s’agit d’une vitrine statique, ça ne l’est pas. Entre les deux on trouve le blog, qui peut se balancer d’un côté ou de l’autre si l’on souhaite gérer des accès utilisateurs, suivre les pages ou ajouter des interactions.

Avec Hugo, le site est généré une seule fois puis les pages sont délivrées, à l’ancienne dirait-on. À la grande époque où l’on éditait le HTML à la main et on publiait son site via FTP. Sauf qu’avec Hugo on manipule du Markdown plutôt que du HTML. Le Markdown est pratique, c’est l’héritage pragmatique d’Aaron Schwartz dont on peut encore trouver la trace dans le code PHP de génération. Le Markdown lui-même porte une étincelle de liberté, il est désormais normalisé dans la RFC 7763. Et on utilise le programme Hugo qui est un binaire fourni, ou bien compilé depuis du code Go, pour générer des pages HTML. Le site généré peut être délivré en http par Hugo ou bien par n’importe quel serveur web. Hugo repose aussi sur des en-têtes front-matter dans les fichiers Markdown qui est une extension plus récente.

Sortir de WordPress c’est sortir d’une zone de confort et ce sera nécessairement perdre des fonctionnalités, comme l’édition en ligne directe intégrée par exemple, le suivi de vues et les formulaires.

C’est aussi faire un choix simplificateur, économe et efficace. Beaucoup moins énergivore il est aussi beaucoup plus efficace et rapide. Il est aussi beaucoup plus facile à déployer qu’un WordPress puisqu’en définitive ce n’est qu’un binaire et un thème.
Une autre bonne raison de migrer est la sécurité, comme a pu le faire le projet Xubuntu à la fin de l’année dernière suite à la compromission de leur site de téléchargement sous WordPress

Mais pourquoi Hugo et pas une autre solution, par exemple Jekyll ?

Hugo est la version la plus efficace, écrit en Go et compilé, les performances se rapprochent sans les égaler de celles de Rust ou de C. Et il est maintenu, dispose d’une communauté qui maintient des thèmes permettant de facilement avoir un rendu à la mode. Jekyll est en Ruby qui n’est pas le plus performant des langages mais est très versatile. Jekyll est apparu avant Hugo ce qui explique sa notoriété.

Ces deux logiciels ont popularisé la génération de sites statiques, mais ce ne sont pas les seuls, eleventry par exemple a déjà été couvert par un journal sur LinuxFr.org.

Ma vie, mon œuvre

Dans mon cas je ne me suis pas posé la question puisque je réponds à une demande d’une personne qui a déjà fait son choix, il faut migrer !

Avant de me lancer dans l’aventure j’ai dû me renseigner, parce que j’opère bien un site statique qui me sert de vitrine et celui-ci est en Markdown sous Git, mais tout est fait à la main et je ne connais pas Hugo. Je ne suis pas non plus un grand utilisateur de WordPress, que j’ai toujours trouvé lourd, et d’ailleurs j’ai toujours eu un faible pour les challengers, et je m’étais penché sur Joomla qui a les mêmes défauts. Utiliser ces CMS c’est déjà avoir appris une façon de penser, avec les pages et les posts, cela ne m’a jamais paru intuitif.

Donc j’étais absolument et résolument prêt pour cette migration !

Vous pouvez à ce moment me demander pourquoi donc l’ai-je fait ?

Parce qu’un ami me l’a demandé, parce qu’il rémunère pour cela et parce que je trouve que cela va dans le bon sens. Celui de l’éco-responsabilité, une sobriété qui ne transige pas avec la qualité et un mouvement vers plus d’indépendance.

Donc je me renseigne.

WordPress via le navigateur, Hugo via le terminal

Si vous ne souhaitez pas utiliser de terminal et des scripts shells, alors je serais d’avis de vous déconseiller fortement de vous lancer dans l’aventure Hugo.
Parce qu’Hugo c’est du Web as code, très exactement l’inverse du WYSIWYG le PETALE Pris à l’écrit tel à l’écran. Tout se fait en Markdown dans votre éditeur favori.
Cela s’opère souvent via Git et le fait de pousser le commit git vers le serveur régénère le contenu du site.
S’il est possible de le faire via un VSCodium, je reste sur mon Emacs favori, mais évidemment ceci un choix très personnel.
Un bon éditeur de texte capable de te laisser saisir des codes Markdown est absolument nécessaire, un éditeur de texte dans ce cas ce n’est pas un traitement de texte, Libreoffice par exemple ne m’apparait pas comme l’outil adapté, mais je vous laisse juge.

On installe le plugin, clic ! On importe le résultat et c’est fini !

C’est assez évident en fait il suffit de suivre ce que propose le projet Hugo en matière de migration vers Hugo.

Ça c’est ce que l’on souhaite et j’y ai presque cru.

Il n’y a pas de plugin WordPress officiel pour exporter vers Hugo, mais il y en a pour exporter en Jekyll. Sachant que Hugo sait importer du Jekyll, cela semble évident.

Tout d’abord il faut importer le plugin sous WordPress.
Si cela semble évident quand le plugin est disponible dans le magasin des plugins WordPress, cela ne l’est plus quand il faut l’installer à la main.

Dans mon cas, et peut être dans le vôtre aussi vous n’avez pas installé le WordPress, il vous a été fourni en tant que service hébergé, et c’est pourquoi vous êtes limités aux plugins officiels, quand encore, on vous y autorise.

Donc en suivant le lien de migration depuis WordPress je lis (en anglais, mais je vous offre gratuitement la traduction) :

wordpress-to-hugo-exporter

Un plugin en un clic qui convertit tous les posts, pages, taxonomies, metadata, et settings en Markdown et YAML et déposable dans Hugo. (Note: Si vous avez des difficultés avec ce plugin, vous pouvez exporter le site pour Jekyll et utiliser le convertisseur intégré à Hugo listé ci-dessus)

Oui mais non, je n’ai pas accès au backend.

Et pourquoi ne pas juste installer un plugin officiel comme celui dont wordpress-to-hugo-exporter dérive ? Le jekyll-exporter

Ce n’est pas un échec, mais ça n’a pas marché.

Après l’installation du plugin et l’utilisation de l’export le site me réponds avec aplomb : 500 Internal ERROR.

Plutôt que d’abandonner, je cherche sur le projet source s’il y a un bug en cours et effectivement : Issue #400 sur wordpress-static-site-exporter. Sur ce, je rajoute mes informations sur le bug et j’attends une réponse.

Donc le ça fonctionne en un clic n’aura pas tenu bien longtemps, en attendant un correctif je me penche sur une alternative. Mais ne vous inquiétez pas, nous y reviendrons, si vous avez suivi le lien de l’issue vous le savez déjà !

Exportez votre site WordPress et appliquez un outil magique !

Ce n’est pas bien grave, il y a d’autres outils…

blog2md
Fonctionne sur l’XML exporté depuis le site gratuit votre VOTRE-DOMAIN.wordpress.com. Cela sauve aussi les commentaires approuvés sous forme YOUR-POST-NAME-comments.md à côté des posts.

Ce projet n’a pas évolué depuis quatre ans, je ne vais pas choisir cette option.

wordhugopress
Un petit utilitaire écrit en Java qui exporte le site WordPress depuis la base de donnée et les resources (c’est-à-dire par exemple les images) stockées localement ou à distance. Ainsi la migration depuis des backups est possible. Support de multiples sites vers un seul site Hugo.

Je n’ai pas accès à la base de données où à l’export des backups, je ne vais pas choisir cette option non plus.

wp2hugo

Celui-ci est un très bon candidat, sauf que je vends mon travail et la licence de cet outil est Attribution-NonCommercial-ShareAlike 4.0 International, donc je ne vais pas choisir cette option. Si mon budget avait été très important j’aurais envisagé de contacter l’auteur pour négocier, mais ce n’est pas le cas.

Donc aucun de ces autres outils ne répond à mes besoins.

La vérité est ailleurs ?

Oui, mais il n’y a pas que site Hugo de référence non plus.

Les forums et en particulier https://discourse.gohugo.io/t/wordpress-migration-url-rewriting/3827, mais il a été écrit il y a presque dix ans…
Et dans mes pérégrinations hors des sentiers battus des scripts Python émergent https://www.infinitescript.com/2024/01/migrate-from-wordpress-to-hugo/.
Ce guide aussi m’a inspiré https://fr.benchwiseunderflow.in/blog/guide-complet-migration-wordpress-hugo/ ceci dit fournir les scripts Python dans son blog sans l’indentation, ce n’est pas ce qui se fait de mieux.

Voici la liste des projets que j’ai regardés, je n’en ai testé qu’une sous partie entre ceux utilisant de l’IA ou pour lesquelles mon utilisation ne respecterait pas la licence et celles dont le contenu semble trop vieux…

Site Commentaire langage html -> markdown license testé
https://github.com/benbalter/wordpress-to-jekyll-exporter plugin officiel nécessite une migration supplémentaire jekyll -> hugo php wordpress plugin Markdownify GPL-3.0
https://github.com/SchumacherFM/wordpress-to-hugo-exporter basée sur une version du projet ci-dessus mais datant de 2014, a dérivé depuis. Ce n’est hélas pas un plugin officiel php wordpress plugin Markdownify GPL-3.0-or-later
https://github.com/lonekorean/wordpress-export-to-markdown travailler sur l’export en XML it won’t migrate GUID correctly nodeJs javascript turndown -
https://github.com/bradfeld/wp-to-hugo plus complet mais : IA generated Claude / typescript via API strip WordPress block comments nodeJs typescript turndown MIT License (& IA ?) Non : IA
https://github.com/ashishb/wp2hugo attachment page post wp_navigation wp comments footnote go [[site_scrapping_vers_Hugo#johanneskaufmann_html_to_markdown]] Attribution-NonCommercial-ShareAlike 4.0 Non, licence non commerciale et c’est un travail commercialisé
https://github.com/helgeklein/WordPress-Hugo-Migration-Scripts-HTML-Markdown/ https://helgeklein.com/blog/scripted-wordpress-html-to-hugo-markdown-migration/ post_type in (“post”, “page”)… donc pas de gestion des blocks python BeautifulSoup MIT
https://github.com/some-programs/exitwp https://web.archive.org/web/20221120194327/https://www.justindunham.net/migrating-from-wordpress-to-hugo/ 2019 ? page et post + item_type_filter python beautifulsoup html2text ~ GNU GPL 3
https://github.com/dreikanter/wp2md issues https://github.com/dreikanter/wp2md/issues python html2text
https://fr.benchwiseunderflow.in/blog/guide-complet-migration-wordpress-hugo/ status “publish” post_type “post”, “page” le code fourni est à copier coller et non fonctionnel python pandoc
https://www.infinitescript.com/2024/01/migrate-from-wordpress-to-hugo/ post de blog contenant le code python utilisé python re (regular expression python)
https://github.com/palaniraja/blog2md Le projet a 4 ans et part de blogger et non de WordPress javascript ? absence de licence non testé

C’est wordpress-export-to-markdown qui a remporté une partie du travail. Cela a nécessité l’installation de node puisque le code est en javascript.

J’exporte donc le site via la fonction standard d’export de site WordPpress qui fourni un fichier XML.

Cet export contient tout sauf les images et les autres ressources, donc il faudra que l’outil puisse les rechercher, et donc que le site WordPress soit toujours activé. Ceci ne peut donc pas se faire sur un site indisponible ou bien même déjà arrêté.

On installe Hugo

Et il faut un serveur, une vraie machine avec une adresse IP publique, un serveur web.
Là où pour du WordPress un hébergeur fournit la solution, en Hugo le plus classique est tout de même de mettre en place son propre serveur. Avec tout ce qui va bien, et le certificat pour HTTPS.

Mais avant de faire le pas, cela s'installe en local sur une machine de développement avec docker, podman, inclus ou bien même directement puisque ce n’est qu’un exécutable.

sur une machine Linux :

sudo apt install hugo

ou

snap install hugo

Il suffit de lancer hugo server dans le répertoire du projet hugo et se connecter sur localhost avec l’URL qui a été fournie dans le terminal.

Dans le cas d’une migration vous aurez forcément à modifier de nombreuses pages de votre site qui comportent des problèmes de code markdown mal converti depuis le HTML.

Et il vous faudra utiliser des scripts, dans votre langage préféré, mais dans tous les cas l’utilisation d’expressions régulières sera nécessaire. C’est-à-dire : il faut connaître un minimum de programmation.

Voici le genre de commande qui recherche tous les fichiers avec l’extension.md et supprime le 'Proudly powered by WordPress' dedans :

text='Proudly powered by <a href="https://wordpress.org" rel="nofollow">WordPress</a>'
find content -name '*.md' -print0 | xargs -0 sed -i 's|'"$text"'||g'

Attention cette commande fonctionne, car le texte $text est compatible avec la syntaxe de commande sed en particulier utiliser un '|' dans la variable text serait problématique.

En suivant la procédure d’installation rapide https://gohugo.io/getting-started/quick-start/ on va créer un dépôt git. Si par la suite on souhaite le répliquer pour le tester ailleurs alors il ne faudra pas oublier les submodules pour le thème, sinon la génération du site rendra un site vide.

git clone user@server:quickstart --recurse-submodules mon_site
cd mon_site
hugo server

On termine avec un firefox http://localhost:1313 par exemple pour voir en local.

on pourra alors éditer le contenu sous content avec notre éditeur préféré et créer un commit git quand nous sommes contents de notre résultat local.

git add content
git commit -m 'édition numero xx du site'
git push

Cela doit pousser sur le git parent le contenu. Si le git parent est attaché à la production alors la production est mise à jour ainsi.

C’est pas beau hein ?

Le contenu généré par l’outil de migration ayant été copié dans le répertoire content du projet Hugo, il suffit de lancer le serveur Hugo pour qu’il soit délivré sur le port indiqué en console. En se connectant avec un navigateur firefox https://localhost:1313, le contenu apparait…

Ah j’oubliais, en Hugo toute la présentation est contrôlée par le thème, ici le thème choisi est ananke, c’est celui proposé dans la documentation de démarrage rapide de Hugo

Il y a du contenu, certes mais quand même il y a eu des dégâts collatéraux.

Cliquez sur l’image pour voir la vidéo.

vue comparée du site avant et pendant migration

Les blocs réutilisables de WordPress

Il s’agit d’une fonctionnalité ajoutée dans l’éditeur de WordPress Gutemberg, la possibilité de créer des blocs réutilisables qui seront référencés dans d’autres pages ou bien même dans d’autres blocs

Pratiquement tous les outils d’export ne conservent pas les items qui ne sont ni de type page ni de type post et quand ils conservent les autres type, ils ne gèrent pas les blocs réutilisables.

Dans le fichier d’export.xml de WordPress on les retrouve ainsi :

<item>
…
<wp:post_id>610</wp:post_id>
…
</item>

et sont utilisés par référence :

<!-- wp:block {"ref":610} /-->

Dans mon cas pour l’outil wordpress-export-to-markdown, j’ai créé une demande de fonctionnalité pour le support des blocs réutilisables.

En pratique les outils perdent complètement le contenu de ces blocs.

Une façon de résoudre le problème est d’utiliser la source HTML générée par WordPress directement et de la convertir en Markdown.

Les <figure>

Hugo ne gère pas le tag <figure>, il faut supprimer ces tags, sinon les images qu’ils contiennent n’apparaissent juste pas. Or WordPress génère souvent des blocks HTML avec des tags figure.

Voici un script bash qui supprime le tag figure partout dans tous les fichiers.md de content.

find_files=(find content -name '*.md' -print0)
command2=(xargs -0 sed -i 's|</\?figure[^>]*[>]||g;')
"${find_files[@]}" | "${command2[@]}"

URL permanentes

Il est crucial que les pages migrées se retrouvent au même endroit après migration. C’est crucial car cela fait partie du SEO, votre référencement, si vos pages changent de place, les moteurs de recherche vont vous perdre, tout comme les références depuis tout autre site.

En Hugo c’est le champ urldans l’entête front-matter du fichier markdown qui sert à indiquer où la page destinée à être délivrée.
Cette URL peut être totalement différente du répertoire dans lequel le fichier se trouve, même s’il est conseillé de conserver la mẽme hiérarchie, c’est une solution pratique.

URL relatives

WordPress délivre toutes ses pages avec des URL absolues dans le corps c’est-à-dire avec le nom du site intégré dans l’URL, ceci est un souci quand on souhaite déplacer le site, ou bien avec un site réplica lui aussi accessible en ligne mais sous une autre URL.

Les expressions régulières sont là pour ça, il faut supprimer http://monsite du début des toutes les URL. Pour rappel, à l’intérieur d’une page HTML un lien href='/article/linuxfr.html' est une référence relative dans le site courant, si l’URL du site est https://example.com alors le lien avec l’URL absolue est au lien `href='https://example.com/article/linuxfr.html'.

Si vous ne faites pas vous pourriez avoir la surprise lors de l’arrêt du site WordPress de ne plus avoir les images et autres ressources, car elles étaient sur le site original et non sur le nouveau site migré !

voici un exemple en bash

find_files=(find content -name '*.md' -print0)
command2=(xargs -0 sed -i "s|https://${site_domain}||g")
"${find_files[@]}" | "${command2[@]}"

Le menu

Le menu a été perdu, c’est ballot !
Via l’export Hugo il n’y a pas de menu du tout, il est perdu.
Dans WordPress le menu est supporté par du CSS les classes wp-block-navigation…
En Hugo c’est le thème qui le gère, ici avec ananke il faut rajouter des entrées de menu avec menu.main, dans mon cas j’ai rajouté le menu globalement dans le fichier de configuration Hugo, mais il y a plusieurs façons de définir les menus en Hugo.

Un site WordPress c’est un site web comme un autre

Une autre approche est de considérer qu’un site WordPress c’est un site web comme un autre.
Un navigateur n’a pas de code particulier pour visualiser un site WordPress, donc un site WordPress est juste un site web, certes avec beaucoup de JavaScript et CSS, mais un site web.
Et un site web, ça se siphonne, et c’est facile, il suffit de regarder le projet internet archive, par exemple le site de LinuxFr.org le 2 avril 2018 pour s’en convaincre, il est très facile de récupérer le contenu visible d’un site web, à condition de connaître tous les points d’entrée et en pratique il suffit de partir de la page principale.
Puisque vous migrez un site que vous possédez, il n’y a pas de souci à utiliser un aspirateur de site.

Une fois le site récupéré, il y a des convertisseurs Markdown.

En particulier j’ai employé le convertisseur de HTML vers Markdown de Johannes Kaufmann, qui est aussi une base pour d’autres projets de conversion pour des applications particulières dont WordPress.

Et le tour est joué ! Ou presque…

On repart de zéro et on mélange tout

Si aucune des solutions ne fonctionne, chacune permet de créer une partie du site. En utilisant toutes les générations on peut récupérer les meilleurs pages.

Dans mon cas le plugin officiel de migration de jekyll vers hugo a été corrigé et j’ai donc pu l’utiliser.

En utilisant aussi des parties générées depuis le site statique, j’ai obtenu un résultat acceptable, mais cela ne s’est pas fait sans une série de petits scripts en bash à base de find et de sed et donc d’expression régulières, les fameuses regex.

Variations mais pas sur le même thème

Une fois le contenu cohérent, il est temps de tester d’autres thèmes Hugo pour donner au site une apparence différente.
Ces thèmes aussi peuvent être personnalisés. La notion de thème existe déjà dans WordPress, donc vous ne devez pas être surpris, mais les thèmes de WordPress ne peuvent pas être transposés tels quels dans Hugo, par exemple le thème twentytwo désormais classique ne se résout pas en la copie de son continu sur Hugo.
Mais passer à Hugo c’est aussi l’opportunité de se démarquer.

Commentaires : voir le flux Atom ouvrir dans le navigateur

"Je capitule" - Matt Mullenweg est abattu

Matt Mullenweg vient de publier un billet anniversaire des 23 ans de WordPress, et ce qui devait ressembler à une célébration tient plus de l'appel au secours. Et j'avoue qu'à lecture, ça m'a mis un petit coup au moral... Parce que oui, le créateur de WordPress est épuisé à cause de 19 mois de guerre juridique...

Côté chiffres pourtant, le post commence très bien. WordPress 7 est sorti la semaine dernière, et en sept jours, 46% des installations sont déjà passées en 7.0 sans aucune casse. Du Raspberry Pi au site de la Maison Blanche, en passant par Korben.info, pas un wp-config.php à éditer à la main, pas un cron à relancer, pas un fichier .htaccess à toucher, TOUT A FONCTIONNÉ !!

Et surtout, aucune attaque supply chain ni faille de sécurité, en tout cas pour le moment. Matt insiste là-dessus et il a raison d'en être fier ! Mais c'est pas vraiment ce qu'on retient de son article...

En effet, ce qu'il explique c'est que la sortie de WordPress 7 n'a pas été ce qu'il espérait parce que trop de temps a été perdu à cause des attaques de WP Engine. Il a, je cite, "des collègues EN TRAIN DE MOURIR" (les majuscules sont dans le texte) qu'il ne peut pas aller voir parce qu'il est noyé sous les procédures. Son meilleur ami attend une greffe de cœur sur un lit d'hôpital pendant que les avocats de Quinn Emanuel l'interrogent sur tout un tas de conneries sans intérêt...

Mais avant, petit rappel pour ceux qui n'auraient pas suivi... depuis septembre 2024, Matt est en guerre ouverte avec WP Engine, un gros hébergeur WordPress propriété de Silver Lake. J'en parlais déjà à l'époque dans WP Engine vs WordPress, la guerre est déclarée . Et en 19 mois, ça n'a pas refroidi du tout... ça s'est même carrément "judiciarisé" à mort.

Silver Lake pèse plus de 100 milliards de dollars (et vient au passage de récupérer TikTok aux États-Unis), et ils ont lâché Quinn Emanuel sur l'affaire. Matt emploie le terme de "shoggoth paperclip-maximizer" pour le qualifier... En gros, ça veut dire que c'est un gars sans émotion qui exécute les ordres de manière littérale jusqu'à l'absurde.

Bref, il s'attaque à Automattic, à lui personnellement, et essaie maintenant carrément de dissoudre la Fondation WordPress qui je le rappelle est à but non lucratif sans aucun employé, et qui finance entre autres les WordCamps et l'éducation open source à travers le monde. C'est le truc qui fait tourner la communauté...

Et de ce qu'on comprend dans ce récit de Matt Mullenweg, c'est que WP Engine essaie de faire passer Matt pour quelqu'un qui détruit des preuves, parce que wordpress.org fait de la rotation de logs (chose que fait absolument tout serveur sur Terre depuis l'invention de syslog en 1980) et parce qu'il utilise les messages éphémères sur Signal avec ses partenaires amoureuses.

Bref, je comprends que le gars soit fatigué par tout ce merdier et cette mauvaise foi. Et puis vient le passage qui fait vraiment mal quand Matt s'adresse directement à Silver Lake : "Vous avez déjà tout dépecé. Si vous vouliez me faire souffrir pour mes péchés, j'ai souffert, et probablement plus profondément que vous ne le saurez jamais. WordPress et WordPress.org, et oui, même mon leadership imparfait, sont au cœur de ce qui a fait le succès de WP Engine jusqu'ici. Vous avez tellement d'argent et de pouvoir, vous venez d'avoir TikTok, l'administration Trump vous adore, vous n'avez pas besoin de contrôler WordPress aussi. Si vous gagnez, vous le détruisez, et après ?"

Puis il termine sur ces mots : "I submit. Let's move on".

Le mec capitule sur le blog officiel... Je dois avouer que j'avais jamais vu ça.

C'est un humain qui craque mais c'est également une fondation à but non lucratif qui risque de disparaître...

Bref, c'est triste pour Matt et clairement pour tout l'écosystème open source derrière. Force à lui et à WordPress !

Source

WordPress Workspace - L'agent IA d'Automattic

Si comme moi, vous bloguez encore à l'ancienne, c'est à dire depuis l'interface web de WordPress.com, sachez qu'Automattic vient de balancer une app pour Mac qui s'est donné pour mission de vraiment bousculer votre façon d'écrire.

WordPress Workspace est donc un éditeur de site, un agent IA, un outil de prise de note... Bref, un outil fourre-tout qui est en réalité un agent IA branché sur votre contenu et capable aussi d'uploader des médias vers la médiathèque de votre site. Ça se présente donc comme un chat auquel on peut demander tout et n'importe quoi, du style "Voici mon article [TEXTE]. Publie le" ou encore "J'ai la flemme, écris moi un article sur ça : [SUJET]".

Vous pouvez aussi l'utiliser pour interroger votre site web, corriger des trucs, mettre à jour des articles...etc.

Le DMG se télécharge en direct depuis le GitHub d'Automattic , et c'est entièrement gratuit avec n'importe quel plan WordPress.com durant la bêta. Et ça fonctionne aussi avec les sites auto-hébergés comme le mien, pour peu que vous l'ayez lié avec Jetpack.

Ce qui est cool avec cet outil c'est surtout que c'est un agent qui connaît déjà votre site WordPress, son contenu, ses médias, ses guidelines et les permissions liées à votre compte. Donc ça va vite...

Au menu des fonctionnalités, vous aurez de la dictée vocale qui s'alignera sur le ton du site, l'envoi de captures d'écran que vous balancez directement dans l'outil, et un raccourci clavier global qui invoque l'agent depuis n'importe quelle app Mac où vous écrivez, même hors WordPress.

Côté multi-sites, vous pouvez aussi naviguer entre plusieurs sites, où chacun devient son propre workspace avec ses propres réglages et ses propres "guidelines" comme on dit, déjà mémorisées.

Sur la roadmap, Automattic prépare une fonctionnalité Guidelines dans le cœur de WordPress, plus des Memories (apprentissage continu de l'agent), des Skills (capacités partageables en équipe) et des Artifacts (stockage de contenu en cours). L'objectif est donc plutôt clair : Ils veulent transformer WordPress en couche de contexte permanente pour les outils IA, et plus simplement en CMS où on dépose des articles.

Donc à tester si vous publiez régulièrement sur WordPress.

Source

WordPress : un pirate achète 30 plugins et y plante une backdoor

Une attaque par la chaîne d'approvisionnement a frappé WordPress début avril. Un individu a racheté une trentaine de plugins via la marketplace Flippa, y a injecté du code malveillant et a attendu huit mois avant de l'activer. WordPress a fermé les 31 plugins concernés le 7 avril, mais la mise à jour officielle ne suffit pas à nettoyer les sites touchés.

L'attaque est redoutable par sa simplicité. Un individu, identifié sous le prénom "Kris", a racheté pour plusieurs centaines de milliers d'euros un catalogue d'une trentaine de plugins WordPress sur Flippa, une marketplace de vente de sites et d'extensions. Ces plugins appartenaient à la société Essential Plugin / WP Online Support. Ils étaient actifs, mis à jour, et installés sur des milliers de sites.

En achetant le catalogue, l'acheteur a récupéré l'accès au dépôt officiel WordPress.org et a pu pousser des mises à jour directement aux utilisateurs. Le code malveillant a été injecté dès août 2025, mais il est resté dormant pendant huit mois. L'activation a eu lieu les 5 et 6 avril 2026.

Côté technique, l'attaque est assez vicieuse. Le module injecté (wpos-analytics) utilise une désérialisation PHP pour communiquer avec un serveur de commande. Et là, le point intéressant : au lieu d'utiliser un domaine classique pour piloter la backdoor, le malware résout l'adresse de son serveur C2 via un smart contract Ethereum, en interrogeant des points d'accès RPC publics. Résultat, couper un nom de domaine ne sert à rien. L'attaquant peut mettre à jour le smart contract à tout moment pour pointer vers un nouveau serveur.

Le payload injecte du code dans le fichier wp-config.php (environ 6 Ko) et crée un fichier wp-comments-posts.php, un nom assez proche des fichiers légitimes pour passer inaperçu. Le tout sert à afficher du spam SEO (liens, redirections, fausses pages) uniquement à Googlebot, ce qui rend l'attaque invisible pour le propriétaire du site.

WordPress.org a fermé les 31 plugins touchés le 7 avril et a poussé une mise à jour forcée le lendemain. Sauf que cette mise à jour ne nettoie pas le fichier wp-config.php, qui est le vrai point de persistance de la backdoor. Si vous avez l'un de ces plugins installé (Countdown Timer Ultimate, Popup Anything on Click, Post Grid and Filter Ultimate, WP Slick Slider, Album and Image Gallery Plus Lightbox, Responsive WP FAQ, entre autres), il faut aller vérifier votre wp-config.php manuellement et chercher un bloc de code d'environ 6 Ko qui n'a rien à y faire. Le fichier wp-comments-posts.php à la racine du site doit aussi être supprimé s'il est présent.

La vraie leçon ici, c'est que la confiance dans un plugin WordPress repose sur son historique, et qu'un changement de propriétaire peut tout remettre en question du jour au lendemain. WordPress.org ne vérifie pas les changements de mains sur les comptes développeurs, et n'a aucun mécanisme d'alerte quand un catalogue entier passe à un nouvel acheteur. Tant que ce trou existe, ce genre d'attaque peut se reproduire. Et le fait que la mise à jour officielle ne nettoie même pas les sites infectés, c'est quand même un problème.

Source : The Next Web

EmDash - Cloudflare refait WordPress from scratch

Cloudflare qui sort un successeur open source à WordPress le 1er avril, je vous avoue que ça sentait le poisson d'avril à plein nez. Sauf que non !! EmDash est bien réel, son code est sur GitHub sous licence MIT, et ça s'installe en une commande toute simple !

L'idée de base pour Cloudflare, c'est de dire que WordPress a plus de 20 ans et bien qu'il alimente 40% du web, son architecture de plugins est un emmental (Le gruyère n'a pas de trou les amis ^^). En effet, 96% des failles de sécurité viennent des extensions et pas du noyau PHP ni des thèmes et en 2025, on a quand même explosé le record de failles dans l'écosystème WP.

Du coup Cloudflare, grand prince (Matthew ^^ Ok, je sors...) a tout repris de zéro en TypeScript et avec l'aide de nombreux agents IA. Et de ce que j'ai compris, le gros morceau de ce projet, visiblement, c'est l'isolation des plugins.

Car sur WordPress, une extension a accès à toute la base de données et au système de fichiers (d'où l'importance de bien les choisir ). Alors que sur EmDash, chaque plugin tourne dans son propre isolat avec un modèle de capacités déclaratives. En gros, le plugin annonce dans un fichier manifeste JSON ce dont il a besoin, genre read:content ou email:send, et il ne peut rien faire d'autre. S'il veut accéder au réseau, il doit même préciser le hostname exact. Comme ça fini les extensions qui aspirent vos données en douce. Par contre, ça veut aussi dire que vos plugins WordPress actuels ne marcheront pas tels quels...

Côté stack, c'est comme je disais du TypeScript de bout en bout avec Astro 6.0 en frontend (pour les thèmes) et Node.js derrière. L'auth passe également par des passkeys par défaut (enfin, plus de mots de passe !) et y'a même un système de paiement natif via le standard ouvert x402 pour monétiser du contenu.

Et le truc qui va vous rassurer si vous êtes allergique au cloud : c'est auto-hébergeable. En fait, le CMS peut tourner sur Cloudflare Workers, mais aussi sur n'importe quel serveur Node.js avec SQLite. Les abstractions sont portables, avec Kysely pour le SQL et l'API S3 pour le stockage. Du coup vous pouvez brancher PostgreSQL, Turso, AWS S3, ou tout bêtement des fichiers en local. Le bonheur !

Le truc cool pour les bidouilleurs, c'est que chaque instance expose un serveur MCP (Model Context Protocol) et une CLI pour piloter le CMS par script. Y'a aussi des Agent Skills pour que les agents IA puissent créer du contenu, gérer les médias et modifier le schéma sans toucher au dashboard. C'est clairement pensé pour l'ère des agents IA.

Et pour ceux qui veulent migrer depuis leur WordPress, c'est prévu pour vous faciliter la tâche puisqu'il y a le support d'export WXR classique ou via un plugin dédié qui crée un endpoint sécurisé protégé par mot de passe. Que ce soient les médias, les custom post types...etc tout est transférable en quelques minutes. Par contre, attention les shortcodes et les blocs Gutenberg custom ne passeront pas tels quel, faudra faire des ajustements.

Car oui c'est une v0.1.0 preview, donc on peut le dire, une bonne grosse beta qui bave mais je trouve ça super cool car le drama WP Engine vs WordPress a montré que l'écosystème était fragile, et c'est bien de réintroduire un peu de diversité. Par contre, remplacer un CMS qui fait tourner 40% du web, c'est hyper ambitieux et ça se fera pas en un trimestre. Car la vraie force de WordPress, c'est sa communauté, ses milliers de plugins et de thèmes, et ça pour le moment, y'a pas grand chose sur EmDash.

M'enfin, si vous voulez tester c'est npm create emdash@latest et c'est parti mon kiki. Ah et y'a aussi un playground sur emdashcms.com pour vous faire une idée sans rien installer. Pour ma part, je testerai ça dès que j'aurais 5 min, mais pour le moment, je ne me vois pas quitter WordPress car EmDash n'a pas (encore) ce petit truc en plus qui me ferait changer... On verra d'ici quelques temps.

Source

Tout ce que vous pouvez désactiver dans WordPress pour qu'il arrête de vous gonfler

WordPress, c’est bien. Mais WordPress qui injecte des scripts d’emojis, des styles Gutenberg, des shortlinks et 47 autres trucs dont vous n’avez pas besoin dans chaque page de votre site… c’est moins bien évidemment. Heureusement, Terence Eden, un dev qui en avait marre de voir son code source ressembler à un plat de spaghetti, a compilé une petite liste de tout ce qu’on peut virer .

Car WordPress a adopté une philosophie de type “Decisions, not options” (des décisions, pas des options) où en gros, au lieu de vous laisser choisir, ils décident pour vous de ce qui est bon pour vous. Un peu comme Macron ^^. Le problème c’est que leurs décisions incluent un tas de fonctionnalités dont la plupart des gens n’ont rien à faire 🥲.

Par exemple les emojis. J’sais pas si vous savez, mais WordPress charge un script de détection d’emojis et une feuille de style dédiée sur CHAQUE page de votre site. Pourquoi tant de haine ? Hé bien parce que si vous tapez :-) dans un article, WordPress veut le transformer en joli emoji. Sauf que si vous utilisez les vrais emojis Unicode (comme tout le monde en 2025), hé ce script ne sert à rien. Et il y a aussi le grand remplacement des emojis dans les flux RSS…. Bref, tout ça, ça dégage.

Ensuite y’a le formatage automatique avec wptexturize qui transforme vos guillemets droits en guillemets typographiques “comme ça”. Et mon préféré, capital_P_dangit qui remplace automatiquement “Wordpress” par “WordPress” avec le P majuscule. Oui, vous ne le saviez pas, mais WordPress corrige l’orthographe de son propre nom dans vos articles. Mais quelle bande de nazes ^^.

Gutenberg, l’éditeur de blocs que j’adore, injecte lui aussi ses styles globaux même si vous utilisez l’éditeur classique. Et c’est pareil pour les styles de la librairie de blocs et l’éditeur de widgets basé sur les blocs. Si vous êtes resté sur le Classic Editor comme beaucoup de gens, tout ça ne sert alors qu’à alourdir vos pages.

Côté métadonnées, WordPress ajoute aussi pleiiiiin de trucs dans le code de vos pages comme les shortlinks, le RSD (Real Simple Discovery, un truc d’il y a 20 ans), des liens vers les flux de commentaires, les liens JSON de l’API REST…

Aux chiottes toutes ces conneries !

Le script de Terence fait aussi sauter l’ajout automatique des tailles d’images (wp_img_tag_add_auto_sizes), les templates de pièces jointes, et les block hooks qui modifient votre contenu. L’idée c’est donc de reprendre le contrôle sur ce que WordPress génère, au lieu de le laisser décider tout seul.

Et grâce à son script, le site de Terence (sans Philippe) obtient d’excellents scores sur PageSpeed Insights , ce qui prouve que tout ce bloat n’est vraiment pas nécessaire. Son script PHP complet fait environ 190 lignes et il est dispo sur son GitLab , bien commenté pour que vous puissiez choisir ce que vous voulez garder ou virer.

Attention quand même, certaines de ces désactivations peuvent casser des fonctionnalités si vous les utilisez vraiment. Par exemple, si vous avez des plugins qui dépendent de l’API REST, la virer complètement serait une mauvaise idée. Même chose pour les blocks Gutenberg si vous utilisez cet éditeur. L’astuce c’est donc de tester chaque modification une par une et de voir ce qui se passe.

Amusez-vous bien et un grand merci à Terence !

API Abilities - Le langage universel de Wordpress pour unifier les composants IA

Vous avez un site WordPress et vous voulez ajouter de l’IA dedans ?

Alors pour faire ça, vous installez un super plugin qui utilise ChatGPT. Parfait ! Sauf que 2 mois après, vous découvrez l’existence d’un nouvelle version de Claude qui est bien meilleure. Ou Gemini sort une fonctionnalité que vous voulez absolument..

Mais bon, votre plugin est marié avec OpenAI, et impossible de divorcer. Du coup, vous êtes coincé. Bienvenue dans le grand bordel de l’IA, où chaque outil parle sa propre langue et refuse de discuter avec les autres.

Heureusement, WordPress vient de sortir un truc qui pourrait bien changer tout ça. En gros, ils ont créé trois outils qui fonctionnent ensemble pour transformer WordPress en “traducteur universel” pour les IA. Ça s’appelle l’Abilities API, le PHP AI Client SDK, et le support du MCP (Model Context Protocol).

D’après l’annonce officielle sur Make WordPress , l’idée c’est donc de créer un registre central où toutes les capacités de WordPress sont décrites de manière lisible par les machines. Jonathan Bossenger explique que l’Abilities API ne se limite pas à découvrir les capacités du site, mais gère aussi les permissions et l’exécution de manière sécurisée. Votre site peut dire à une IA “Voilà ce que je sais faire, voilà ce que tu peux toucher, et voilà comment tu exécutes ça”.

// N'importe quel plugin peut enregistrer ses capacités avec le hook `init`.
wp_register_ability( 'my-seo-plugin/analyze-content-seo', [
 'label' => __( 'Analyser le SEO du contenu', 'my-seo-plugin' ),
 'description' => __( 'Analyse le contenu de l\'article pour améliorer le SEO.', 'my-seo-plugin' ),
 'thinking_message' => __( 'Analyse de votre contenu en cours !', 'my-seo-plugin' ),
 'success_message' => __( 'Contenu analysé avec succès.', 'my-seo-plugin' ),
 'execute_callback' => [ 'MySEOPlugin', 'analyze_content' ],
 'input_schema' => [
 'type' => 'object',
 'properties' => [
 'post_id' => [
 'type' => 'integer',
 'description' => __( 'L\'identifiant de l\'article.', 'my-seo-plugin' ),
 'required' => true
 ],
 ],
 'additional_properties' => false,
 ],
 'output_schema' => [
 'type' => 'number',
 'description' => __( 'Le score du contenu en pourcentage.', 'my-seo-plugin' ),
 'required' => true,
 ],
 'permission_callback' => 'edit_posts',
] );

Le truc marrant, c’est que WordPress a la réputation d’être la technologie “has-been” du web. Les hipsters du dev vous disent que c’est un dinosaure, qu’il faut passer à Next.js ou je ne sais quoi, et pourtant, c’est ce dino qui devient le premier CMS à adopter le MCP, qui est quand même un standard ultra-récent. Si vous n’avez jamais entendu parlé de MCP, c’est développé par Anthropic et ça permet de standardiser la façon dont les IA communiquent avec les outils externes.

WordPress a intégré le MCP en quelques mois et je vous explique rapidmeent comment ça marche, parce que c’est pas si compliqué. Le PHP AI Client SDK v0.1.0 est en fait une interface unifiée pour parler à n’importe quelle IA. Vous écrivez votre code une fois, et ça fonctionne avec OpenAI, Claude, Gemini, ou même un modèle local que vous faites tourner chez vous. Ce SDK se charge donc de traduire vos requêtes dans le langage de chaque provider.

C’est donc surtout un truc pour les développeurs, les agences, les gens qui codent des plugins et des thèmes custom. Et si vous êtes un utilisateur lambda de Wordpress (qui ne code pas dans cet écosystème), sachez quand même que les plugins et thèmes que vous utiliserez demain seront construits là-dessus.

Donc indirectement, ça va influencer votre expérience car vous aurez des plugins qui vous laisseront choisir votre fournisseur de LLM IA dans les réglages. Par exemple, un plugin de rédaction pourra utiliser Claude pour le style, GPT-4 pour la structure, et Gemini pour la recherche d’images, tout en même temps si vous le souhaitez… Ce sera un peu comme le Bluetooth ou l’électricité : vous ne savez pas vraiment comment ça marche, mais vous l’utiliserez tous les jours sans y penser.

Ce SDK est déjà disponible via Composer pour les devs qui veulent tester et WordPress 6.9 intégrera l’Abilities API directement dans son core. Après ça, on devrait donc voir une explosion de plugins qui utiliseront plusieurs IA simultanément.

Après si vous n’utilisez pas Wordpress, rassurez-vous, c’est pas juste une feature de chez eux… C’est un standard qui pourra être adopté également par d’autres CMS. Un peu comme RSS à l’époque qui a commencé dans un coin, puis que tout le monde a adopté parce que c’était ouvert et pratique. Et bien là, c’est pareil, l’Abilities API et le MCP sont open source donc n’importe qui peut les implémenter dans ses outils.

A voir maintenant comment les projets concurrents vont réagir… Wix va-t-il continuer à pousser son intégration exclusive avec ChatGPT ? Shopify va-t-il ouvrir son API IA ? Ou est-ce qu’ils vont tous regarder WordPress prendre une longueur d’avance et se dire “Merde, on a peut-être loupé un truc” ?

Bref, moi je trouve ça cool car WordPress aurait pu faire comme les autres, c’est à dire un beau partenariat exclusif avec OpenAI, un joli chèque, et enfermer 43% du web dans un écosystème propriétaire… Mais au lieu de ça, ils ont créé un standard ouvert et gratuit comme ça, c’est la communauté qui décide.

Et ça c’est beau ! Donc si vous êtes dev et que vous voulez tester, le repo GitHub du PHP AI Client est dispo ici avec toute la doc. Et si vous êtes juste utilisateur curieux, gardez un œil sur les plugins qui sortiront après WordPress 6.9 car ça va devenir intéressant…

WordPress Telex - L'outil IA qui génère vos blocs Gutenberg à partir d'un simple prompt

J’ai testé un truc trop cool ce soir et je pense que ça va vous plaire, si vous utilisez WordPress. Ça s’appelle Telex et c’est un nouveau service expérimental lancé par les petits gars d’Automattic au WordCamp US 2025 . Matt Mullenweg l’a présenté comme leur vision de l’IA pour le développement WordPress, un peu comme le fait v0 de Vercel ou Lovable, mais spécifiquement conçu pour générer des blocs Gutenberg WordPress.

Ces blocs Gutenberg, si vous ne connaissez pas, ce sont ces modules de contenus custom que vous pouvez rajouter dans vos pages WordPress. En général, ça me demande de coder un peu mais avec Telex, vous tapez un prompt décrivant ce que vous voulez, et il vous génère un fichier .zip que vous pouvez installer comme un plugin sur votre site WordPress ou dans WordPress Playground (cette version qui tourne directement dans le navigateur sans hébergement).

L’outil est donc disponible dès maintenant sur telex.automattic.ai si ça vous branche.

Ce qui est vraiment cool, c’est que tout se passe directement dans l’interface WordPress que vous connaissez déjà. Le panneau de prompt se trouve sur la droite, et vous pouvez voir le code généré et le tester en temps réel dans l’éditeur comme ça, pas besoin de jongler entre différentes interfaces comme avec d’autres outils IA.

Pour ma part, je lui ai demandé de me faire un bloc pour mon Patreon et je trouve qu’il s’en est vraiment bien sorti. Mais attention, les résultats sont vraiment variables selon ce que vous demandez.

Du coup si votre premier prompt ne donne pas le résultat escompté, sachez que c’est souvent compliqué de corriger le tir avec des prompts supplémentaires. Mieux vaut donc recommencer avec une approche différente.

Notez qu’Automattic héberge Telex sur son propre domaine plutôt que de l’intégrer directement à WordPress.com. Ça pourrait signifier qu’ils préparent un produit IA indépendant qu’ils pourraient potentiellement proposer en marque blanche aux hébergeurs ou aux développeurs…. On verra bien.

Quoi qu’il en soit, ce lancement s’inscrit dans une stratégie plus large de WordPress de développer des produits IA alignés avec les objectifs long terme de la plateforme. Pour l’instant, c’est gratuit (il faut juste un compte WordPress.com), mais vu le caractère expérimental, ne comptez pas dessus pour vos projets clients. Par contre, pour s’amuser et voir où va WordPress avec l’IA, c’est franchement pas mal.

J’imagine que la prochaine étape, ce sera de proposer des thèmes personnalisés par IA… et qui sait, peut-être qu’un jour, c’est l’IA de WordPress qui rédigera vos articles ?

Source

Comment optimiser les performances de votre site avec o2switch ?

– Article en partenariat avec o2switch

Hello à tous,

Dans une précédente vidéo, nous avions découvert ensemble comment créer et configurer un site WordPress avec o2switch, cet hébergeur français qui propose des offres complètes et adaptées à tous les types de projets web.

Et aujourd’hui, nous allons aller encore plus loin en explorant les outils d’optimisation de performances proposés par o2switch pour transformer votre site en véritable fusée !

Car vous le savez, la vitesse de chargement d’un site web est cruciale, non seulement pour l’expérience utilisateur mais aussi pour le référencement. En effet, Google pénalise les sites lents et récompense ceux qui s’affichent rapidement, alors c’est pourquoi il est essentiel d’optimiser au maximum les performances de votre site, que ce soit un WordPress ou autre chose.

Revue de presse de l’April pour la semaine 42 de l’année 2024

Cette revue de presse sur Internet fait partie du travail de veille mené par l’April dans le cadre de son action de défense et de promotion du logiciel libre. Les positions exposées dans les articles sont celles de leurs auteurs et ne rejoignent pas forcément celles de l’April.

[Le Monde.fr] Lina Khan, la femme qui fait trembler les Gafam (€)

✍ Corine Lesnes, le dimanche 20 octobre 2024.

«L’économie, enjeu d’une Amérique fracturée» (5/5). La présidente de la Federal Trade Commission, l’agence antitrust américaine, combat les grands monopoles. Elle irrite les républicains et participe aux efforts déployés par l’administration Biden pour défendre son action contre l’inflation.

[La République] Vie privée, logiciels libres: ce journaliste veut sensibiliser à un usage plus éthique de l'informatique

Le samedi 19 octobre 2024.

Thierry Pigot, habitant de Samois-sur-Seine et journaliste spécialisé en technologies numériques vient de publier un livre pour simplifier l’informatique du quotidien. Rencontre."> Le directeur général de l’Open Source Initiative (OSI), Stefano Maffulli, critique vertement l’utilisation par Meta du terme «open source» pour qualifier ses modèles d’IA générative Llama. L’OSI attaque Meta alors qu’elle finalise justement sa définition de ce terme employé pour qualifier les modèles d’intelligence artificielle.

Et aussi:

[ZDNET] Wordpress: l'écosystème open source s'enfonce dans le conflit

Le mercredi 16 octobre 2024.

Une guerre fait rage depuis plusieurs semaines entre le fondateur du projet Matthew Mullenweg et l’un des principaux fournisseurs de site web Wordpress, WP Engine.

Et aussi:

Commentaires : voir le flux Atom ouvrir dans le navigateur

Optimiser la table wp_postmeta de WordPress avec un index

WordPress, c’est vraiment un outil formidable. C’est bien pour cela que c’est aujourd’hui le CMS numéro 1 qui est largement devant tout les autres. C’est facile d’installer WordPress et si on s’en occupe bien en n’installant pas n’importe quoi et en faisant régulièrement les mises à jour, ça roule bien. Que ce soit pour les ... Lire la suite

L’article Optimiser la table wp_postmeta de WordPress avec un index est apparu en premier sur ZoneTuto.

Gérer efficacement la maintenance de votre site WordPress

Une maintenance efficace de votre site WordPress est essentielle pour garantir sa pérennité. Un site WordPress bien maintenu non seulement fonctionne plus facilement mais est également plus sécurisé et optimisé pour les moteurs de recherche. Dans cet article, nous aborderons les aspects clés de la maintenance WordPress, y compris les mises à jour, les sauvegardes, ... Lire la suite

L’article Gérer efficacement la maintenance de votre site WordPress est apparu en premier sur ZoneTuto.

❌