custom-post-types – ¿Hay alguna manera de obtener N número de editores WYSIWYG en un tipo de publicación personalizada?

Pregunta:

¿Hay alguna forma de tener varios editores WYSIWYG para un tipo de publicación personalizada? Por ejemplo, si tuviera un diseño de 2 columnas, quisiera tener un editor para una columna y otro editor para la otra.

Respuesta:

Digamos que su tipo de publicación personalizada se llama Properties , agregaría el cuadro para contener su editor tinyMCE adicional usando un código similar a este:

function register_meta_boxen() {
    add_meta_box("wysiwyg-editor-2", "Second Column", "second_column_box",
    "properties", "normal", "high");    
}
add_action('admin_menu', 'register_meta_boxen');

wysiwyg-editor-2 es el ID que se le habrá aplicado el meta box, Second Column es el título que tendrá el meta box, second_column_box es la función que imprimirá el HTML para el meta box, las properties son nuestra publicación personalizada type, normal es la ubicación del metabox y high especifica que debe mostrarse lo más alto posible en la página. (Por lo general, debajo del editor de tinyMCE predeterminado).

Luego, tomando esto como el ejemplo más básico, debe adjuntar el editor tinyMCE a un área de texto. Todavía tenemos que definir nuestra función second_column_box que imprimirá el HTML para el metabox, por lo que este es un lugar tan bueno como cualquier otro para hacer esto:

function second_column_box() {
    echo <<<EOT
    <script type="text/javascript">
jQuery(document).ready(function() {
    jQuery("#tinymce").addClass("mceEditor");
    if ( typeof( tinyMCE ) == "object" &&
         typeof( tinyMCE.execCommand ) == "function" ) {
        tinyMCE.execCommand("mceAddControl", false, "tinymce");
    }
});
</script>
    <textarea id="tinymce" name="tinymce"></textarea>
EOT;
}

Hay un par de problemas que no estoy seguro de cómo superar. El editor tinyMCE estará anidado dentro de un metabox, lo que podría no ser ideal, y no contará con la capacidad de cambiar entre los modos de edición HTML y Visual, así como los comandos de inserción de medios que tiene el editor de publicaciones normal. El cambio de modos parece definirse como una función cuyo primer argumento es el ID, pero, sin embargo, también parece estar codificado en el script wp-tinymce. Es posible usar las funciones de tinyMCE integradas para hacerlo, pero esto cambia el área de texto entre el tinyMCE completo y un área de texto básica, sin ninguno de los botones de inserción HTML de WP.

Leave a Comment

Your email address will not be published. Required fields are marked *

web tasarım