Ajouter l'audio à un WordPress fait avec Divi, WPBakery ou Elementor
Les constructeurs de page rangent l'article dans des blocs, et c'est exactement là qu'un module d'audio peut échouer sans rien dire. Comment le texte est extrait, ce qui a dû être corrigé, et le chemin sûr quand un doute subsiste.
Beaucoup de sites WordPress ne sont plus montés avec l'éditeur standard, mais avec un constructeur de page : Divi, WPBakery, Elementor. Ces outils donnent la main sur la mise en forme, mais ils changent une chose invisible pour le visiteur et décisive pour un module d'audio : la façon dont le contenu de l'article est rangé en coulisses. Avant d'installer quoi que ce soit, il vaut mieux comprendre où un module peut trébucher, et comment le nôtre s'y prend.
Le problème : l'article est rangé dans des blocs
Un module d'audio doit faire deux choses sur un article : récupérer son texte pour en fabriquer le son, et poser le lecteur sur la page. La seconde ne pose pas de difficulté particulière avec un constructeur, parce que le lecteur s'insère par les points d'accroche de WordPress, sans toucher au thème. C'est la première qui réserve un piège.
Divi et WPBakery ne stockent pas l'article comme du texte simple. Ils rangent tout le contenu dans des codes courts imbriqués, du genre [et_pb_section][et_pb_row][et_pb_column][et_pb_text]Le texte[/et_pb_text] chez Divi, ou [vc_row][vc_column][vc_column_text]... chez WPBakery. Or la fonction WordPress qui retire les codes courts les enlève avec leur contenu. Un module naïf qui s'appuie dessus récupère donc un texte vide, conclut que l'article est « trop court », et refuse de le sonoriser, parfois sans le moindre message si l'article passait dans un lot.
Ce qui a été corrigé, et comment
Nous avons rencontré exactement ce défaut pendant des essais sur un vrai WordPress, et il a été corrigé dans la version 1.32 de l'extension. Le principe de la correction est simple à vérifier : au lieu de laisser la fonction standard tout effacer, le module déplie les balises de mise en forme de ces deux constructeurs et ne garde que leur contenu. La balise part, le texte reste. Les modules qui ne portent que du code, un bloc HTML brut ou un script, sont au contraire retirés entièrement, parce que ce n'est pas du texte à lire à voix haute.
Un second défaut, plus discret, se cachait derrière le premier. Les constructeurs collent souvent la fin d'un bloc au début du suivant, sans espace : « Notre histoire » suivi de « Fondée en... » était lu « Notre histoireFondée », en un seul mot. La correction ajoute une espace après chaque fin de bloc, et seulement sur une page de constructeur. Point important pour qui n'utilise pas de constructeur : un contenu ordinaire est extrait exactement comme avant, octet pour octet. La correction ne touche que les pages où le problème existe.
Et Elementor ?
Elementor fonctionne autrement : dans le cas courant, il produit du HTML ordinaire que le module lit comme il lirait n'importe quel thème. Il n'a donc pas eu besoin du traitement spécifique réservé à Divi et WPBakery. Nous préférons toutefois le dire franchement : nous avons vérifié et éprouvé l'extraction sur Divi et WPBakery, parce que ce sont eux qui cassaient. Pour Elementor comme pour tout constructeur dont la mise en page serait rangée d'une manière inhabituelle, la règle est de vérifier le résultat sur un article avant de lancer un lot, et deux chemins sûrs existent si le texte extrait n'est pas celui attendu.
Le premier est le raccourci [wedispatch], qui pose le lecteur à un endroit précis et fonctionne dans un gabarit ou un constructeur. Le second, plus radical, est de choisir soi-même le texte que l'audio doit lire : depuis l'espace client, on colle la version exacte à sonoriser, et c'est elle qui est lue, quelle que soit la façon dont le constructeur range la page. C'est la réponse honnête au cas où l'extraction automatique ne suffit pas : on ne bricole pas, on donne directement le bon texte.
Avant d'installer
Si votre site tourne sous Divi, WPBakery ou Elementor, la marche à suivre tient en trois gestes. Installez le module, qui se télécharge depuis la page WordPress sans créer de compte. Sonorisez un article représentatif, de préférence une page bien construite avec le constructeur, et écoutez le début : c'est là que les mots collés ou un texte tronqué s'entendent tout de suite. Si tout est juste, lancez le reste. Si quelque chose cloche, passez par le texte choisi plutôt que de chercher la cause côté thème.
Pour le détail de ce que le module écrit et ne touche pas dans votre installation, voyez ce que le plugin installe exactement. Et si vous préférez ne pas passer par une extension du tout, l'audio peut aussi s'ajouter par l'API ou par le flux RSS, deux chemins qui ignorent complètement le constructeur de page.
Sonorisez vos articles avec WeDispatch
Ce blog sera lui-même sonorisé par WeDispatch. Envie de voir ce que ça donne sur vos contenus ?
Demandez une démo