MW WP Formの問い合わせデータを元に新規でカスタム投稿を作成
-
MW WP Formはとても使いやすいので、お気に入りのプラグインです。
今回、MW WP Formの問い合わせデータを使って、別のカスタム投稿に投稿を作成したいと思いました。
フォームはあらかじめ作成済みで、変更はないものとして、
フォームで入力された内容をそれぞれカスタムフィールドとして入力するカスタム投稿を作りたいです。`
<?phpclass ContactManager
{
public function __construct()
{
add_action(‘save_post’, array( $this, ‘save_contact_manager_posts’), 10, 1);
}public function save_contact_manager_posts( $post )
{
global $post_type;
$MWF_post_type = ‘mwf_123’;if ( $post_type === $MWF_post_type )
{
$new_post = array(
‘post_type’ => ‘contact_manager’,
‘post_status’ => ‘publish’,
‘post_title’ => get_post_meta( $post->ID, ‘お名前’, true ),
‘post_author’ => 1
);
$post_id = wp_insert_post( $new_post, true );
update_post_meta( $post_id, ‘お名前’, get_post_meta( $post->ID, ‘お名前’, true ) );
update_post_meta( $post_id, ‘フリガナ’, get_post_meta( $post->ID, ‘フリガナ’, true ) );
update_post_meta( $post_id, ‘性別’, get_post_meta( $post->ID, ‘性別’, true ) );
update_post_meta( $post_id, ‘生年月日’, get_post_meta( $post->ID, ‘生年月日’, true ) );
update_post_meta( $post_id, ‘メールアドレス’, get_post_meta( $post->ID, ‘メールアドレス’, true ) );
update_post_meta( $post_id, ‘メッセージ’, get_post_meta( $post->ID, ‘メッセージ’, true ) );
}
}
}
$contact_manager_page = new ContactManager();
`
参照元のMWFormの問い合わせデータのpost_typeは’mwf_123’、
新しく作成するカスタム投稿のpost_typeは’contact_manager’、
‘お名前’、’フリガナ’、’性別’、’生年月日’、’メールアドレス’、’メッセージ’はそれぞれ、フォームのnameで、投稿のカスタムフィールドとして保存したいです。
PHPでfunctions.phpのクラス内に上記のコードを追加してみたのですが、うまく機能しません。どこか間違っているところや、こうした方がもっと良いなどのアドバイスをいただけませんでしょうか。
- トピック「MW WP Formの問い合わせデータを元に新規でカスタム投稿を作成」には新たに返信することはできません。