hola buenos días, pues no recibí ninguna respuesta pero gracias a dios lo he solucionado.
Lo primero que hice fue descargar el tinymce para desarrolladores y busque el ejemplo de los formatos por que era como yo lo quería, el archivo es formatControl.js.
bueno aquí dejo mi solución
Código:
tinymce.PluginManager.add('componentes', function(editor, url) {
each = tinymce.each;
var configuraciones =[
{title:'componente1', items: [
{title:'configuracion1', insertar:'{componente_galeria_1}'},
{title:'configuracion2', insertar:'{componente_galeria_2}'},
{title:'configuracion3', insertar:'{componente_galeria_3}'}
]},
{title:'componente2', items: [
{title:'configuracion1', insertar:'{componente2_galeria_1}'},
{title:'configuracion2', insertar:'{componente2_galeria_2}'},
{title:'configuracion3', insertar:'{componente2_galeria_3}'}
]},
{title:'componente3', items: [
{title:'configuracion1', insertar:'{componente3_galeria_1}'},
{title:'configuracion2', insertar:'{componente3_galeria_2}'},
{title:'configuracion3', insertar:'{componente3_galeria_3}'}
]}
];
function crearMenu(componentes){
var menu = [];
if(!componentes){
return;
}
each(componentes, function(compo){
var menuItem = {
text : compo.title,
icon: false
};
if(compo.items){
menuItem.menu = crearMenu(compo.items);
}else{
menuItem.onclick = function() {
editor.insertContent(compo.insertar);
};
}
menu.push(menuItem);
});//fin each
return menu
}
var confMenu = crearMenu(configuraciones);
editor.addMenuItem('configuraciones',{
text:'Componentes',
context:'tools',
menu : confMenu
});
bueno lo que se necesita es un arreglo en formato Json se le pasa como parámetro a la función crearMenu(arreglo);
bueno espero que les sirva.
Lo unico que me falta es crear el arreglo en Json desde php obteniendo los datos de mysql.
Gracias