Crear una página para manejar el envío del formulario

4

Actualmente tengo algunos tipos de publicación personalizados "tiendas" (en realidad más como páginas que publicaciones) y una taxonomía personalizada "productos" vinculados a esos tipos de publicación.

Estoy intentando crear un formulario (a través de un código corto) que le permite al usuario seleccionar uno (o potencialmente más en el futuro) productos que, cuando se envían, muestran una página con un listado de tiendas (título y otro post meta) relacionadas con el producto (s) elegido (s).

Tengo el formulario, pero no estoy seguro de cuál es la mejor manera de manejar el envío y la página de visualización subsiguiente.

Noté la página de códice para add_rewrite_endpoint () estados

  

Esto se puede usar para todo tipo de cosas:

     
  • controlador ajax
  •   
  • controlador de envío de formularios
  •   
  • controlador de notificaciones alternativo
  •   

sin embargo, no hay más información sobre cómo lograr esto.

Cualquier puntero en el manejo de envíos de formularios sería genial. Gracias.

Editar : Más adelante, quiero que la página de envío del formulario se redirija a una URL agradable que representa el término seleccionado. Por ejemplo

  1. El usuario selecciona el producto "libros", pulsa enviar
  2. El formulario se envía a la URL de manejo o algún tipo de enlace atrapa el envío
  3. El navegador se redirige a "tiendas / libros"
  4. Algo muestra las páginas de "compras" etiquetadas con productos de "libros"

Mi pregunta se puede dividir en ...

  1. ¿Qué URL utilizo en el atributo action del formulario? ¿Es esto incluso necesario?
  2. ¿Dónde manejo el envío del formulario? ¿Creo un archivo específico o puedo registrar algún tipo de gancho de acción? Tenga en cuenta que estoy deseando enviar un encabezado Location para redirigir a otra URL, por lo que esto debe ocurrir antes de que se envíe cualquier salida al navegador.
  3. ¿Cómo configuro algo para aceptar la solicitud de "tiendas /% producto%" y mostrar los resultados como corresponde?

Lo siento por la larga consulta, pero estoy luchando para familiarizarme con la API y la documentación de Wordpress.

    
pregunta Phil Brown 29.11.2010 - 05:44

1 respuesta

4

Esto es realmente muy fácil (al menos, los números 1 y 2 son):

  1. Puede usar cualquier URL que cargue un archivo de plantilla de tema. Por ejemplo, puede crear una

    Página " de WordPress y en su Plantilla de página puede usar la matriz $_POST de PHP para capturar los valores de <form> .

  2. A menos que tenga una buena razón, realmente no necesita hacer una redirección. Puede hacerlo, pero no veo que lo necesite y solo hace que su tarea sea más complicada. Si realmente desea < fuerte> esta respuesta le mostrará cómo.

  3. Estoy confundido por lo que intentas lograr con tu URL " shops/%product% ". Al principio, su elección de "tiendas" para un tipo de publicación personalizada y "productos" para una taxonomía me parece mal (a menos que esté tratando de representar a muchos diferentes tiendas, es decir, si su sitio está tratando de ser un mercado para muchos comerciantes diferentes. ¿Es así? Aun así, todavía no entiendo por qué usaría una taxonomía para sus productos.) Me parece que, en cambio, querría crear un tipo de publicación personalizada de "Producto" (aunque no estoy seguro de la taxonomía) , y luego obtendrá URL del tipo products/%product% cuando registra su tipo de publicación personalizada. ¿O tal vez mal entiendo lo que estás tratando de hacer para el # 3?

respondido por el MikeSchinkel 29.11.2010 - 08:21

Lea otras preguntas en las etiquetas