【WordPress】MW WP Formのカスタム設定《メモ》

WordPress

1.動的にタームをチェックボックスの項目として表示したい場合

項目にカスタムタクソノミーを使いたいなって時に使う(実際動くか不明)

add_filter('mwform_choices_mw-wp-form-70', 'add_terms_list', 10, 2);
function add_terms_list($children, $atts)
{
  if ($atts['name'] == 'name属性名') {
    $tax_terms = get_terms('タクソノミー名'); // タクソノミースラッグを指定
    // 投稿に紐づくタームの一覧を配列に格納
    foreach ($tax_terms as $tax_term) { // ループ処理開始
      $children[$tax_term->name] = $tax_term->name; // ターム名を配列に格納
    }
  }
  return $children;
}

2.カスタム投稿+ACFとの連携

MW WP Formで送信ボタンを押すとカスタム投稿として登録でき、各項目はカスタムフィールド内に格納される。

“mwform_before_send_admin_mail_mw-wp-form-70”の最後の数字部分は、使用するフォームのIDを入力する

function mw_wp_form_save($Mail_admin, $Data)
{
  $new_post = array(
    'post_type' => 'カスタム投稿名', //登録するカスタム投稿
    'post_title' => $_POST['title-name'], //タイトル
    'post_status' => 'publish', // 公開保存
  );
  $post_id = wp_insert_post($new_post, true);
  if (!is_wp_error($post_id)) {
    update_post_meta($post_id, 'カスタムフィールド名', $_POST['フォームのname属性']);
    update_post_meta($post_id, 'カスタムフィールド名', $_POST['フォームのname属性']);
    .
    .
    .
  }
}
add_filter('mwform_before_send_admin_mail_mw-wp-form-70', 'mw_wp_form_save', 10, 2);
タイトルとURLをコピーしました