엘리멘터 form을 활용하여 설문조사를 한 후에 그 조사를 조사 값들을 text로 받아
디비 회원 테이블 안에 칼럼을 만들어 그 칼럼들 안에 넣고 싶은데요
회원 정보말고 임의의 테이블(survey) 안에 넣어두도록 php 코드 짜놨는데
로그인된 아이디의 테이블 내 해당 칼럼에 저장 해두고싶은데 어떻게 해야될까요??
add_action( 'elementor_pro/forms/new_record', function( $record, $ajax_handler ) {
$raw_fields = $record->get( 'fields' );
$fields = [];
foreach ( $raw_fields as $id => $field ) {
$fields[ $id ] = $field['value'];
}
global $wpdb;
$output['success'] = $wpdb->insert('survey', array( 'favor' => $fields['favor'], 'scent' => $fields['scent'], 'finish' => $fields['finish']));
$ajax_handler->add_response_data( true, $output );
}, 10, 2);
이걸 활용했을때는 form 작성 완료후 해당 survey 테이블 에 form에서 받을 필드값이 저장됩니다.
이를 어떻게 수정해야될까요??
안녕하세요~^^
워드프레스 사이트에서 사용자 정보를 가져오는 건
wp_get_current_user 함수 또는 WP_User 클래스를 활용하시면 사용자 정보를 가져올 수 있습니다.
자세한 내용은 아래 링크를 참고해보세요.
https://codex.wordpress.org/ko:함수_레퍼런스/wp_get_current_user
https://codex.wordpress.org/Class_Reference/WP_User
고맙습니다.
말씀하신 update function이 어떤 것을 말씀하시는 건지는 이해가 잘 가지 않습니다.
저희가 모든 플러그인의 코드를 알 수 없기 때문에
올려주신 코드 또한 어떤 코드인지 이해가 잘 가지 않습니다.
워드프레스 사이트에서 사용자 정보를 추가하는 건 add_user_meta 함수를 활용하시면 가능합니다.
사용자 정보를 업데이트하는 건 update_user_meta 함수를 활용하시면 가능합니다.
자세한 내용은 아래 링크를 참고해보세요.
https://developer.wordpress.org/reference/functions/add_user_meta/
https://developer.wordpress.org/reference/functions/update_user_meta/
고맙습니다.