lors de l'utilisation de wp_editor, je colle mon texte dans l'éditeur visuel. Si je passe à l'éditeur HTML, tous mes tags sont là. Jusqu'à présent, pas de problème. Lorsque je mets à jour la chose, toutes mes balises apparaissent dans mon éditeur visuel et en HTML, elles deviennent quelque chose comme:
<p><strong>
Si je mets à jour à nouveau, les balises apparaissent sur ma page. Je suis donc coincé dans l'édition de mon texte une seule fois. Si je mets à jour plusieurs fois, les balises apparaissent et tout se gâte.
Quelqu'un a une idée de ce qui va se passer?
J'utilise cette ligne pour créer le wp_editor:
<?php $metabox->the_field('shortText'); ?>
<p>
<label for="<?php $metabox->the_name(); ?>">Text</label>
<?php wp_editor($metabox->get_the_value(), $metabox->get_the_name(), $settings); ?>
</p>
Merci!
MODIFIER:
Le problème est avec
$metabox->get_the_value()
Il analyse le code avec les balises, ce qui gâche tout. Existe-t-il un moyen d'analyser la valeur dans l'éditeur HTML et non dans l'éditeur visuel?
SOURCE AJOUTÉE:
Contribution:
Faire des sorties de groupe et briser l’isolement. Venez vivre une activité entre gens qui vivent les mêmes choses, sentir la force du groupe plutôt que l’isolement.
Sortie (var_dump):
string(594) "<p><strong>Faire des sorties de groupe et briser l’isolement. Venez vivre une activité entre gens qui vivent les mêmes choses, sentir la force du groupe plutôt que l’isolement.</strong></p> <p><strong></strong>Le Regroupement vous propose des sorties de groupe pour faciliter le plaisir en vivant des expériences comme vivent les « autres familles normales ». Nos sorties sont dépourvues d’obstacles et se vivent sans les soucis de se faire identifier parmi le groupe.</p>"
Et puis la fonction get_the_value ();
/**
* @since 1.0
* @access public
*/
function get_the_value($n = NULL, $collection = FALSE)
{
$this->_meta(NULL, TRUE);
$value = null;
if ($this->in_loop)
{
if(isset($this->meta[$this->name]))
{
$n = is_null($n) ? $this->subname : $n ;
if(!is_null($n))
{
if ($collection)
{
if(isset($this->meta[$this->name][$this->current]))
{
$value = $this->meta[$this->name][$this->current];
}
}
else
{
if(isset($this->meta[$this->name][$this->current][$n]))
{
$value = $this->meta[$this->name][$this->current][$n];
}
}
}
else
{
if ($collection)
{
if(isset($this->meta[$this->name]))
{
$value = $this->meta[$this->name];
}
}
else
{
if(isset($this->meta[$this->name][$this->current]))
{
$value = $this->meta[$this->name][$this->current];
}
}
}
}
}
else
{
$n = is_null($n) ? $this->name : $n ;
if(isset($this->meta[$n]))
{
$value = $this->meta[$n];
}
}
if (is_string($value) || is_numeric($value))
{
if ($this->in_template)
{
return htmlentities($value, ENT_QUOTES, 'UTF-8');
}
else
{
// http://wordpress.org/support/topic/call-function-called-by-embed-shortcode-direct
// http://phpdoc.wordpress.org/trunk/WordPress/Embed/WP_Embed.html#run_shortcode
global $wp_embed;
return do_shortcode($wp_embed->run_shortcode($value));
}
}
else
{
// value can sometimes be an array
return $value;
}
}
J'ai rencontré le même problème lorsque j'utilisais la nouvelle fonction wp_editor sur une metabox à alimentation alchimique. J'ai fait quelques recherches et trouvé une solution qui utilise "html_entity_decode". Jetez un coup d'œil à la référence ici: https://Gist.github.com/1838037
Essayez de changer
<?php wp_editor($metabox->get_the_value(), $metabox->get_the_name(), $settings); ?>
à
<?php wp_editor( esc_textarea( $metabox->get_the_value() ), $metabox->get_the_name(), $settings); ?>