J'ai rencontré une petite situation qui est, espérons-le, possible de résoudre. Mon but est de prendre un fichier XML existant du serveur, de l'analyser, puis de l'injecter comme une liste dans l'éditeur WYSIWYG original de Wordpress afin que le propriétaire du site ait la liste disponible lorsqu'il écrit un nouveau message. En ce moment, j'ai ce code dans mon wp-admin/fichier modifier-form-advanced.php:Parse XML dans Wordpress WYSIWYG éditeur SEULEMENT pour les messages
/**
* Fires after the title field.
*
* @since 3.5.0
*
* @param WP_Post $post Post object.
*/
do_action('edit_form_after_title', $post);
if (post_type_supports($post_type, 'editor')) {
?>
<div id="postdivrich" class="postarea<?php if ($_wp_editor_expand) { echo ' wp-editor-expand'; } ?>">
<?php
/** LOAD XML FROM SERVER AND PARSE AS UL INTO EACH NEW WP POST **/
$xml = simplexml_load_file('../my-folder/file.xml');
$product = "<br/><br/><h2 style='text-align:center; color:#003300;'><u>Products Available Now</u></h2><br/><ul style='text-align:center; list-style:none; color:#003300;'>";
foreach($xml as $value) {
$product .= "<li>";
$product .= $value->Description .= " $";
$product .= $value->Price .= "/";
$product .= $value->QtyUnit .= "\n";
$product .= "</li>";
};
?>
<?php wp_editor($product, 'content', array(
'_content_editor_dfw' => $_content_editor_dfw,
'drag_drop_upload' => true,
'tabfocus_elements' => 'content-html,save-post',
'editor_height' => 300,
'tinymce' => array(
'resize' => false,
'wp_autoresize_on' => $_wp_editor_expand,
'add_unload_trigger' => false,
),
)); ?>
Bien qu'il fonctionne, cela provoque des problèmes de couple.
1) Il injecte les données dans chaque éditeur WYSIWYG, y compris les pages, que je voudrais éviter. Le contenu ne devrait apparaître que dans les éditeurs de post si possible.
2) Cela provoque un bogue assez sérieux qui efface tout sauf la liste à chaque fois que cette page admin est rechargée. Je ne peux pas enregistrer de brouillons ou modifier des publications ou des pages à moins que je garde cette session ouverte dans le navigateur pendant le processus d'édition.
Vous ne savez pas si ces problèmes peuvent être résolus, mais toute aide est sincèrement appréciée !!
Cela a fonctionné à merveille, je vous remercie beaucoup! J'ai restauré le fichier original et personnalisé le code du plugin. Indique un chemin absolu vers le fichier XML car il doit se trouver dans un dossier spécifique sur le serveur. Vraiment apprécier l'aide! –