こちらの記事が参考になります
https://www.sidethree.co.jp/blog/memo/201909.html
まずカスタム投稿を作成
function.phpに以下を記載
function create_post_type() { $datalist = [ 'title', 'revisions' ]; register_post_type( 'datalist', array( 'label' => 'キャンペーンLP', 'public' => true, 'has_archive' => false, 'menu_position' => 3, ) ); } add_action( 'init', 'create_post_type' );
MW WP Formのお問い合わせデータがデータベースに登録後
そのコピーデータを新しくカスタム投稿に保存する
まず先にプラグインACFを使ってカスタム投稿の入力欄を作成していく
その後以下コードをfunction.phpに記載
function save_datalist_posts() { $new_post = array( 'post_type' => 'datalist', 'post_status' => 'publish', 'post_title' => $_POST['namae'], 'post_author' => 1 ); $post_id = wp_insert_post( $new_post, true ); update_post_meta( $post_id, 'list_adpattern', $_POST['adpattern'] ); update_post_meta( $post_id, 'list_namae', $_POST['namae'] ); update_post_meta( $post_id, 'list_kana', $_POST['kana'] ); update_post_meta( $post_id, 'list_Email', $_POST['Email'] ); update_post_meta( $post_id, 'list_Tele', $_POST['Tele'] ); update_post_meta( $post_id, 'list_month', $_POST['month'] ); update_post_meta( $post_id, 'list_ContentOfInquiry', $_POST['ContentOfInquiry'] ); } add_filter( 'mwform_before_send_admin_mail_mw-wp-form-4114', 'save_datalist_posts' ); add_filter( 'mwform_before_send_admin_mail_mw-wp-form-3742', 'save_datalist_posts' );
‘list_adpattern’ はACFで作成したフィールド名
‘adpattern’ はMW WP FORMのnameで指定した名称
add_filter( ‘mwform_before_send_admin_mail_mw-wp-form-4114’, ‘save_datalist_posts’ );
add_filter( ‘mwform_before_send_admin_mail_mw-wp-form-3742’, ‘save_datalist_posts’ );
この部分の数字はフォームのID
ABテストなどで複数あれば上記のように2行それぞれのフォームIDを指定
作成したカスタム投稿一覧に項目名を表示
function add_posts_columns( $columns ) { $columns['list_progress'] = '来館誘致状況'; $columns['list_namae'] = '申込者名'; $columns['list_kana'] = 'フリガナ'; $columns['list_month'] = '挙式希望時期'; $columns['list_adpattern'] = '広告経路'; return $columns; } add_filter( 'manage_edit-datalist_columns', 'add_posts_columns' );
一覧に表示した項目のそれぞれのデータを表示
function custom_posts_column( $column_name, $post_id ) { if ( $column_name == 'list_progress' ) { $list_progress = get_post_meta( $post_id , 'list_progress' , true ); echo ( $list_progress ) ? $list_progress : '未対応'; //'未対応'はでフォルテで表示する文言。何もなければ'-'とする。 } if ( $column_name == 'list_namae' ) { $list_namae = get_post_meta( $post_id , 'list_namae' , true ); echo ( $list_namae ) ? $list_namae : '-'; } if ( $column_name == 'list_kana' ) { $list_kana = get_post_meta( $post_id , 'list_kana' , true ); echo ( $list_kana ) ? $list_kana : '-'; } if ( $column_name == 'list_month' ) { $list_month = get_post_meta( $post_id , 'list_month' , true ); echo ( $list_month ) ? $list_month : '-'; } if ( $column_name == 'list_adpattern' ) { $list_adpattern= get_post_meta( $post_id , 'list_adpattern' , true ); echo ( $list_adpattern ) ? $list_adpattern : '-'; } } add_action( 'manage_posts_custom_column', 'custom_posts_column', 10, 2 );