반응형
저는 연락처 양식 7을 사용하여 두 개의 서로 다른 양식을 페이지에로드 한 다음 이메일을 보내는 것 외에도 해당 정보를 데이터베이스에 동적으로 추가합니다. 불행히도 플러그인 때문에 필터가 필요하지 않도록 단순히 다른 이름으로 모든 입력을 생성 할 수는 없습니다. 따라서 본질적으로 양식 ID를 액션 후크로 가져 와서 제출중인 양식에 따라 $ data 변수를 동적으로 생성하고 싶지만 cf7 양식 ID를 얻는 방법을 잘 모르겠습니다. 누구든지 이것을 수행하는 방법을 알고 있습니까, 아니면 더 실행 가능한 방법을 알고 있습니까?
양식 단축
[contact-form-7 id="221" title="Reg 1"] [contact-form-7 id="112" title="Reg 2"]
functions.php의 PHP 액션 후크
function save_form( $wpcf7 ) {
global $wpdb;
$form_to_DB = WPCF7_Submission::get_instance();
if($form_to_DB) {
$formData = $form_to_DB->get_posted_data();
}
if("Request a Free Demo" != $formData['demo_request'][0]){
$freeDemo = "yes";}else { $freeDemo = "nope";}
if(THE FORM ID = 221) {
$data = array(
some values from the 112 form
$wpdb->insert( $wpdb->prefix . 'registrations', $data );
);
}elseif(THE FORM ID = 112) {
$data = array(
some other values from the 112 form
$wpdb->insert( $wpdb->prefix . 'registrations_2', $data );
);
}
}
remove_all_filters('wpcf7_before_send_mail');
add_action('wpcf7_before_send_mail', 'save_form' );
해결 방법
해결 :
논리 연산자를 사용하여 양식 특정 필드가 비어 있는지 여부를 확인했습니다. 양식을 제출할 때 "form_2_name"필드가 비어 있으면 양식 1이 제출되고있는 것입니다. 해당 논리를 사용한 간단한 if 문이 트릭을 수행했습니다!
참조 페이지 https://stackoverflow.com/questions/32707898
반응형
'MySql' 카테고리의 다른 글
MySQL How to call a stored procedure using select statement in mysql (0) | 2020.11.18 |
---|---|
MySQL LIKE로 검색하는 동안 Mysql Concat 두 열 (0) | 2020.11.18 |
MySQL 가변 크기 변수 목록이있는 MySQL Prepared 문 (0) | 2020.11.18 |
MySQL pyodbc는 모든 형식의 명명 된 매개 변수를 지원합니까? (0) | 2020.11.18 |
MySQL Sequelize : WHERE LIKE 절의 필드 연결 (0) | 2020.11.18 |
댓글