J'ai donc créé quelques méta-boîtes à l'aide de wp_editor, toutes identiques à celles-ci:
add_action( 'add_meta_boxes', 'business_facts_metabox' );
function business_facts_metabox()
{
add_meta_box('business_facts', 'Business Facts', 'business_facts_output', 'page', 'normal', 'high');
}
function business_facts_output( $post )
{
//so, dont ned to use esc_attr in front of get_post_meta
$business_facts_value= get_post_meta($_GET['post'], 'business_facts' , true ) ;
wp_editor( htmlspecialchars_decode($business_facts_value), 'business-facts', $settings = array('textarea_name'=>'business-facts') );
}
function save_business_facts( $post_id )
{
if (!empty($_POST['business-facts']))
{
$data=htmlspecialchars($_POST['business-facts']);
update_post_meta($post_id, 'business_facts', $data );
}
}
add_action( 'save_post', 'save_business_facts' );
Malheureusement, lorsque je produis ce qui est sauvegardé, tout ce qui est enregistré est affiché. Ainsi, si je devais sortir un mot en gras, le résultat serait <strong> Word </ strong>, au lieu de Word . J'en ai besoin pour sortir correctement avec le style et le HTML fonctionne correctement.
Est-ce possible d'utiliser des métaboxes personnalisés? si oui, que dois-je modifier dans mon code?
J'ai donc compris cela presque immédiatement après avoir posté cette question (duh)
function business_facts_output( $post )
{
//so, dont ned to use esc_attr in front of get_post_meta
$business_facts_value= get_post_meta($_GET['post'], 'business_facts' , true ) ;
wp_editor( htmlspecialchars_decode($business_facts_value), 'business-facts', $settings = array('textarea_name'=>'business-facts') );
}
Fondamentalement, ce bit ici, où il est écrit que htmlspecialchars_decode($business_facts_value)
doit être changé. la fonction htmlspecialchars_decode () n'est pas nécessaire ici, j'ai juste besoin de $ business_facts_value