Я провел много исследований и не нашел именно то, что искал, поэтому я надеюсь, что меня укажут в правильном направлении.
Я разрабатываю плагин Events, который будет бронировать билет с внешнего интерфейса. Это ничем не отличается от любой другой отправки формы, но меня смущает то, как справиться с этим из плагина, написанного через ООП с классом.
В большинстве статей, которые я нашел, говорится, что для обработки $ _POST нужно использовать страницу шаблона. В идеале я хотел бы, чтобы это обрабатывалось функцией в плагине.
Другая вещь, в которой я не уверен, - когда вы отправляете форму на веб-интерфейсе, как она на самом деле передается функции на серверной части. Я надеюсь полностью абстрагировать обработку формы от любых деталей шаблона.
// 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...
}
Я не уверен, что подключить, чтобы поймать это, или куда отправить действие формы тоже. Спасибо за помощь!
-Адам
источник
Ответы:
Отправьте действие формы на свою домашнюю страницу или на URL конкретной страницы. Вы не можете иметь обработку $ _POST в шаблоне, потому что вам нужно перенаправить после того, как ваш процесс его обработает, и перенаправление должно быть запущено перед любым выводом HTML.
Вы также можете проверить одноразовый номер, чтобы убедиться, что данные были отправлены из правильного места ...
источник