He investigado mucho y no he encontrado exactamente lo que estoy buscando, así que espero que pueda apuntarme en la dirección correcta.
Estoy desarrollando un complemento de eventos que reservará un ticket desde la interfaz. Esto no es diferente a cualquier otro envío de Formulario, pero con lo que me estoy confundiendo es cómo manejar eso desde un complemento que se escribe a través de OOP con una clase.
La mayoría de los artículos que encontré dicen poner el manejo de $ _POST dentro de la página de la plantilla. Idealmente, me gustaría que esto fuera manejado por una función dentro del complemento.
La otra cosa de la que no estoy seguro es cuando envía el formulario en la interfaz, cómo se pasa eso a la función en el back-end. Espero abstraer completamente el procesamiento del formulario a partir de los detalles de la plantilla.
// events.php
if ( ! class_exists( 'Events' ) ) {
Class Events {
function __construct() {
add_action( 'plugins_loaded', array( &$this, 'includes' ), 1 );
}
function includes() {
require_once( EVENTS_INCLUDES . 'functions.php' );
}
}
}
if ( class_exists( 'Events' ) ) {
$events_load = New Events();
}
// functions.php
function process_form() {
...do form processing here...
...insert booking...
}
No estoy seguro de en qué conectar eso atraparía eso, o dónde enviar la acción del formulario también. ¡Gracias por toda la ayuda!
-Adán
fuente
Respuestas:
Envíe la acción del formulario a su página de inicio o a una URL de página específica. No puede tener el manejo de $ _POST dentro de la plantilla porque necesita redirigir después de su proceso, y la redirección debe dispararse antes de cualquier salida HTML.
También puede verificar si hay un nonce para asegurarse de que los datos se enviaron desde el lugar correcto ...
fuente