J'ai créé une page de paramètres personnalisés avec deux appels wp_editor()
dessus. Lorsque je saisis du texte dans l'éditeur et que je le formate (par exemple, je le mets en gras), puis que je l'enregistre, la valeur est enregistrée dans la base de données. Si je recharge la page de paramètres à nouveau, le texte de l'éditeur est chargé en gras.
Cependant, lorsque je charge les options sur une page et que je l’échange en écho, elle n’a pas de balises html.
Je n'ai pas ajouté d'assainissement, et il semblerait qu'il sache qu'il est en gras, car cela fonctionne lors du chargement de la page des paramètres.
Est-ce que quelqu'un sait comment je peux l'obtenir pour qu'il ne supprime pas les balises HTML lors de l'impression de la valeur à partir du champ de l'éditeur?
Voici comment je l’imprime:
$options = get_option('settings');
echo $options['information'];
EDIT: Voici comment je crée le wp_editor
:
<?php wp_editor( $options['text'], 'text', array(
'textarea_name' => 'settings[text]',
'media_buttons' => false,
'textarea_rows' => 10
)); ?>
Il enregistre automatiquement lorsque je clique sur le bouton d'envoi de formulaire. C'est créé comme ça:
function settings_page() {
if (!current_user_can('manage_options')) {
wp_die(__('You do not have sufficient permissions to access this page.', 'test'));
}
?>
<div class="wrap">
<?php screen_icon(); ?> <h2><?php _e('Settings', 'test'); ?></h2>
<form method="post" action="options.php">
<?php settings_fields( 'settings' ); ?>
<?php do_settings_sections( 'settings-page' ); ?>
<?php submit_button(); ?>
</form>
</div>
<?php
}
Vous devez formater la sortie:
echo wpautop( stripslashes ( $options['information'] ) );
voir: https://codex.wordpress.org/Function_Reference/wpautop