Spintax est une boîte à outils de génération de contenu pour WordPress : un seul gabarit devient du texte unique, non dupliqué, sur tout le site. Écrivez des gabarits réutilisables en balisage spintax et insérez-les par shortcodes et PHP — ou liez-les aux champs ACF, aux post-meta et aux champs produit de WooCommerce pour que chaque publication concernée reçoive sa propre variante rendue à l'enregistrement, selon un calendrier ou à la demande.
Balisage
- Énumérations —
{a|b|c}choisit une option au hasard, imbrication comprise - Permutations —
[<config>a|b|c]prend N éléments, les mélange et les assemble avec vos séparateurs - Variables —
%var%en portée globale, de shortcode et locale :#setretire à chaque usage,#deftire une fois par rendu - Conditions —
{?VAR?then|else}se ramifie selon la valeur d'une variable,{?!VAR?then}inverse le test - Accord du pluriel —
{plural N: one|few|many}choisit la forme grammaticale juste selon le nombre (RU/UK/BE et SR/HR/BS à trois formes, type anglais à deux) - Gabarits imbriqués — un gabarit dans un autre via
#includeou[spintax] - Commentaires de bloc —
/#…#/n'atteint jamais la sortie
Liaisons ACF et post-meta
Une liaison associe un gabarit à un seul champ cible d'un type de contenu — par exemple « Articles → ACF : hero_subtitle » — et l'extension remplit ce champ sur chaque publication concernée. Les modifications manuelles sont conservées par défaut et suivies par empreinte ; des options décident si la liaison ne remplit que les champs vides, régénère à chaque enregistrement, ou vide le champ quand le gabarit ne produit rien.
- Bulk Apply — parcours asynchrones par lots via Action Scheduler, avec un « Run now » synchrone et WP-CLI en repli s'il n'est pas installé
- Journaux — le relevé, parcours par parcours, de ce qui a été écrit, ignoré ou vidé
- WP-CLI —
wp spintax bindings list|apply|test|export|importpour passer de la préproduction à la production - Migration — un assistant unique pour ceux qui viennent de
nested-spintax-for-acf
WooCommerce
Sur la page d'un produit, l'extension détecte le produit courant et l'expose au gabarit sous la forme %product_name%, %product_sku%, %product_type%, %product_categories%, %product_tags% et un %product_attribute_<slug>% par attribut — un même gabarit posé sur deux produits donne donc deux variantes mises en cache séparément. Le prix est délibérément laissé de côté : c'est une donnée commerciale volatile qui, glissée dans un gabarit, invaliderait le cache de rendu à chaque changement de tarif.
Une liaison vers un champ produit va plus loin et écrit le texte généré dans la description ou la description courte du produit, avec la même mécanique que les liaisons ACF : calendrier, Bulk Apply, WP-CLI, journaux. Trois limites sont voulues : seuls ces deux champs sont accessibles en écriture, les modifications manuelles l'emportent par défaut, et toute écriture passe par WooCommerce elle-même, afin que ses caches, ses tables de recherche et ses hooks d'enregistrement restent cohérents. WooCommerce reste optionnelle : sans elle, les variables n'apparaissent tout simplement pas et les liaisons produit cessent d'écrire.
Cache et confidentialité
Le rendu est mis en cache via l'API WP Object Cache (prête pour Redis / Memcached), avec une régénération planifiée facultative par gabarit. Tout tourne sur votre propre serveur — pas de service externe, pas de pistage, aucune donnée qui quitte le site.
Une syntaxe, cinq moteurs
La syntaxe est un standard ouvert et documenté. Son noyau est compatible GTW — énumérations, permutations, variables, inclusions — et s'est enrichi au fil des ans de primitives propres : conditions pilotées par la valeur, accord du pluriel, variables #def tirées une seule fois. Cinq moteurs indépendants l'implémentent face à un même corpus de tests, et la référence complète est sur spintax.net. Pour écrire hors de l'administration WordPress, il y a Spintax Studio, un éditeur Windows natif et gratuit, avec aperçu en direct à deux panneaux et validation intégrée.