Tengo un tema desarrollado a medida y realmente complejo. Una de las cosas que tengo es múltiples áreas de contenido donde los usuarios pueden especificar contenido para pestañas específicas. Cargo varias instancias del editor de WordPress a través de la wp_editor()
función. Funciona perfectamente (Todo esto está en el lado del administrador, en el tipo de publicación "Página")
Sin embargo, comencé a hacer algunas mejoras, incluida la capacidad de agregar / eliminar pestañas dinámicamente (antes, cargué 6 editores en la página). Los usuarios pueden tener 1-7 pestañas.
Cuando los usuarios agregan una pestaña, debe agregar una instancia del editor a la página. Sin embargo, no importa lo que intente, no puedo hacer que se cargue y se muestre correctamente.
Aquí están las 2 cosas que he probado hasta ahora:
- Cree un archivo php que incluya el bootstrap de administrador y luego cargue el editor con
wp_editor()
. Luego hago un jQuery$.load
para llamar a la página e incluir el HTML resultante en el área que necesita mostrar. Sin embargo, esto realmente no funciona, ya que los botones de formato de los editores desaparecen (vale la pena señalar que al abrir la página directamente, el editor se muestra y funciona perfectamente) - Cargó el editor en la página, dentro de un div oculto, y luego una vez que se agrega una pestaña, use jquery para moverlo a su lugar. Esto carga el editor con tacto, pero no puede usar ninguno de los botones del editor (se muestran, pero no hacen nada), y no puede colocar el cursor en el área de texto (sin embargo, es curioso que cambie al modo HTML permite escribir y cierta interacción con los botones de modo HTML)
Entonces la pregunta es, ¿alguien ha tenido suerte agregando editores a través de llamadas AJAX? ¿Algún consejo?
$('#sph-tabs-section-tab'+newTab).load('/wp-admin/admin-ajax.php?action=sph_add_editor');
y luego agregué una función que devuelve wp_editor()
. Se llama sin problemas, pero aún así solo devuelve el editor sin botones. (exactamente los mismos resultados que el ítem 1 en el PO)
admin-ajax.php
? Si no hace una función con su códigoadmin-ajax.php