Делаю плагин для вордпресс, столкнулась с такой проблемой: если форму пишу сама, то данные могу записать в базу данных, а если форму использую из Contact Form 7, то не получается записать данные в бд. Можете подсказать плиз куда копать? PHP: function createTAble(){ global $wpdb; $tableName = $wpdb->prefix . 'faktura'; $charset_collate = $wpdb->get_charset_collate(); $sql = "CREATE TABLE ".$tableName." ( id mediumint(9) NOT NULL AUTO_INCREMENT, form varchar(100) NOT NULL DEFAULT '', company_name varchar(40) NOT NULL, nip varchar(20) NOT NULL, person_first_name nvarchar(50) NOT NULL, person_second_name nvarchar(50) NOT NULL, email varchar(50) NOT NULL, telephone varchar(20) NULL, back_email varchar(20) NOT NULL, PRIMARY KEY (id) ) $charset_collate;"; require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); dbDelta( $sql ); } function bm_save_form( $wpcf7 ) { global $wpdb; $submission = WPCF7_Submission::get_instance(); if ( $submission ) { $submited = array(); $submited['title'] = $wpcf7->title(); $submited['posted_data'] = $submission->get_posted_data(); } $wpdb->insert( $wpdb->prefix . 'faktura', array( 'form' => $submited['title'], 'company_name' => $submited['posted_data']['text-818'], 'nip' => $submited['posted_data']['text-819'], 'person_first_name' => $submited['posted_data']['your-name'], 'person_second_name' => $submited['posted_data']['your-name'], 'email' => $submited['posted_data']['your-email'], 'telephone' => $submited['posted_data']['text-817'], 'back_email' => $submited['posted_data']['email-723'] ) ); $wpdb->query('COMMIT'); return; } add_action( 'init', [ $this, 'createTable' ] ); add_action('bm_save_form', [$this,'bm_save_form'] );
@Murr, для начала: какими сообщениями об ошибках/замечаниях сопровождается событие "не получается записать данные в бд"? И ещё есть плагин Contact Form to DB
Вопрос закрыт. Нашла ошибку. Если кому-то интересно: add_action('wpcf7_before_send_mail',[$this,'bm_save_form']);