"wp_editor" no muestra TinyMCE correctamente cuando se usan corchetes en el nombre

4

Estoy creando una página de opciones personalizadas y tengo un área de texto que he convertido en un editor TinyMCE usando wp_editor.

TinyMCE se muestra correctamente, sin embargo, se rompe cuando incluyo corchetes en el $ id. Aquí está el código que estoy usando para la devolución de llamada de la función add_settings_field:

function px_wp_editor($args){
        $options    = get_option('theme_options');  
        $value      = $options['px_wp_editor'];
        $id         = 'theme_options[px_wp_editor]';

         extract( $args );
         $class = (!empty($class))?$class:'';

         $settings = array(
            'textarea_rows'     => 12,
            'textarea_name'     => $id, 
            'editor_class'      => $class,
            'media_buttons'     => true,
            'tinymce'           => true
         );
         wp_editor($value, $id, $settings );            
    }

Si quité los corchetes del valor $ id, entonces se muestra bien. Sin embargo, debido a la forma en que estoy recuperando los valores usando get_option, necesito llamar "textarea_name" como está actualmente, entre corchetes.

La primera imagen a continuación es cómo se ve cuando se usan corchetes para el nombre (los iconos completos no se muestran correctamente y no hay botones de Visual / Texto).

La segunda foto es cómo debe mostrarse.

    
pregunta pixelkicks 30.07.2014 - 17:15

2 respuestas

1

No puede poner corchetes como ID de editor. Pero puedes cambiar el nombre de textarea por.

wp_editor('','px_wp_editor',array('textarea_name' => 'theme_options[px_wp_editor]'));

la parte importante es que "id" y "textarea_name" son diferentes.

    
respondido por el Rajilesh Panoli 11.03.2015 - 12:53
0

No puedo probar esto ahora, pero prueba esto:

$id = htmlentities('theme_options[px_wp_editor]');
    
respondido por el Jack Lenox 30.07.2014 - 17:38

Lea otras preguntas en las etiquetas