Выполнение кода, связанного с конкретной формой контакта, которую отправляет пользователь - PullRequest
0 голосов
/ 26 апреля 2018

Я новичок в Wordpress, поэтому, пожалуйста, прости меня и исправь любую ошибку, которую я совершаю, я готов учиться и совершенствоваться :)

Я создал несколько контактных форм для подачи заявки на курсы фитнеса. Люди должны заполнить их, и я получаю письмо с их письменными данными.

Сейчас я пытаюсь выполнить код PHP, который записывает данные в базу данных MySQL всякий раз, когда пользователь правильно заполняет и отправляет контактную форму.

Мне также нужно, чтобы каждая контактная форма имела уникальный код, «привязанный» к ней, потому что коду PHP нужен этот код для записи данных в базу данных. (проще говоря, каждый курс имеет свой уникальный код, который мне нужно записать в базу данных вместе с данными пользователя).

Насколько я понимаю, мне нужно использовать add_action( 'wpcf7_before_send_mail', 'my_function' ); во фрагменте внутри functions.php. Сейчас я пытаюсь добиться того, чтобы этот код прикреплялся к каждой контактной форме (но он не должен быть виден пользователям), чтобы мой фрагмент php читал этот код и правильно редактировал базу данных.

Есть подсказка, где искать? Мне не нужен написанный код, только некоторые идеи!

Заранее спасибо, всем хорошего дня.

РЕДАКТИРОВАТЬ: Я обнаружил, что в CF7 есть "скрытые поля". Итак, я добавил их в свою тестовую контактную форму:

[hidden idcorso "6"]
[hidden idgruppo "0"]

Тогда я использую этот фрагмент, но он не работает:

add_action( 'wpcf7_before_send_mail', 'process_contact_form_data' );

function process_contact_form_data( $contact_data ){

$idcorso = $contact_data->posted_data["idcorso"];
$idgruppo = $contact_data->posted_data["idgruppo"];

if (is_user_logged_in()) {

    $idutente = get_current_user_id();
    $data = current_time('d-m-Y - g:i');
    $stato = 1;
    $wpdb->insert("fis_iscrizioni_2018", array('id_utente' => $idutente, 'id_corso' => $idcorso, 'data' => $data, 'stato' => $stato, 'id_gruppo' => $idgruppo) );              
}
}

Есть подсказка?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...