Je cherchais une solution qui me permettrait d'éditer du code HTML et de le conserver après le passage à l'éditeur visuel et vice-versa.
J'ai essayé un tas de choses sans succès:
S'il ne s'agissait que de moi pour gérer le contenu, je désactiverais l'éditeur visuel. Mais comme j'ai un certain nombre de gestionnaires de contenu et de pages sur lesquelles il y a du HTML (des formulaires, par exemple) et du contenu qu'ils doivent modifier, ce n'est pas une option.
Toutes les suggestions seront grandement appréciées.
Je sais exactement ce que vous ressentez et, malheureusement, ce problème est enraciné dans le code principal de wordpress, pas dans TinyMCE, ni en raison de problèmes de compatibilité de navigateur. J'ai écrit un plugin qui vous permet de formater le balisage HTML dans l'éditeur HTML, de basculer entre celui-ci et l'onglet Visual sans affecter le code source, et d'apporter des modifications dans l'onglet Visual sans rompre le formatage HTML d'origine ...
http://wordpress.org/extend/plugins/preserved-html-editor-markup/
Il préserve également les indentations à onglets - 4 espaces seulement :( - et améliore la compatibilité HTML5.
Le seul "piège" est qu'il désactive wpautop. Je cite le piège car certaines personnes détestent que l’éditeur insère p balises autour de leur contenu. En conséquence, l’éditeur visuel utilise plutôt les balises br pour les retours à la ligne.
Prendre plaisir!
Vous pouvez essayer ces plugins:
TinyMCE Advanced a paramétré sur Arrêtez de supprimer les balises <p>
et <br />
lors de l'enregistrement et affichez-les dans l'éditeur HTML
La suite du plugin a fonctionné pour moi.
S'il n'y a que des sections de code que vous ne voulez pas modifier, vous pouvez également stocker ce code HTML/embed/etc sensible dans des champs personnalisés.
En utilisant ce plugin shortcode, vous pouvez inclure les champs personnalisés RAW dans n’importe quel article, page ou même widget avec quelque chose comme: [inclure "mon nom de champ personnalisé"] Il peut également extraire des extraits de code courants d’autres publications avec quelque chose comme [include global = "shared_code_menu"].
C'est une alternative bon marché et limitée, mais légère et simple.