Metabox personalizado con Ajax en Editar publicación - Atascado

2

Estoy intentando crear un meta box personalizado con varios campos de texto. La idea es que inicialmente haya un cuadro de texto, luego puede hacer clic en el botón 'Agregar nuevo' y se agrega otro cuadro de texto (usando Ajax; no es necesario publicar ni actualizar la publicación para que se cree el cuadro de texto). Estoy usando el siguiente código (a continuación), pero simplemente no funciona. Estoy completamente atascado; Realmente necesito un poco de ayuda. Incluso estoy dispuesto a donar algo de dinero si alguien me puede ayudar a resolver esto.

enlace

    
pregunta Matthew Ruddy 31.10.2010 - 02:17

2 respuestas

9

Si el objetivo final es agregar cuadros de texto dinámicamente, pero aún requiere que el usuario guarde / actualice la publicación, no necesita usar AJAX en absoluto.

Simplemente asigne un nombre a los campos de texto de manera apropiada para que una matriz de valores se publique, luego manipúlela en su acción de guardar.

Puede ser útil guardar esta matriz en una sola clave de metadatos, para que puedas hacer un bucle a través de ella para generar el cuadro de metadatos.

Proporcione un ID al < div > adjunto, algo como 'slideshow_metabox'

Establezca sus cuadros de texto iniciales como tal:

<input type="text" style="position: relative; right: 0; width: 85%;" name="slideshow[]" value="<?php echo $value; ?>" />

Y cambia tu 'botón agregar' en clic para ser:

function() {
    jQuery('#slideshow_metabox').append('<input type="text" style="position: relative; right: 0; width: 85%;" name="slideshow[]" value="" />');
}

Espero que esto ayude.

    
respondido por el Jeff Stieler 15.11.2010 - 15:44
2

Aquí hay una secuencia de comandos que escribí que he usado en 5-6 diferentes tipos de cajas meta. Me encanta tener la opción de agregar / eliminar campos, hace que las cosas sean mucho más rápidas, ya que WP puede ser muy lento al guardar / publicar publicaciones, incluso aunque podría publicar en el archivo admin-ajax.php en segundo plano y ser mucho más rápido. / p>

enlace

    
respondido por el jaredwilli 31.01.2011 - 01:49

Lea otras preguntas en las etiquetas