WordPress カスタム投稿タイプのタイトル一覧をContact Form 7にドロップダウン形式で表示

Facebookでシェア Twitterでシェア

ホームページ制作/Web制作でWordPressカスタム投稿タイプを使用する時タイトル一覧をContact Form 7にドロップダウン形式で表示する方法

WordPressのカスタム投稿タイプを使用してホームページ制作/Web制作をする際、Contact Form 7使用したお問い合わせフォームやオーダーフォーム、その他フォーム内に動的にカスタム投稿タイプのタイトル一覧を表示し、ユーザーに選択させたい場面があるかと思います。

今回はプラグインは使用せず、Contact Form 7内にSELECT(セレクトボックス)を使用したドロップダウン形式でカスタム投稿タイプタイトル一覧の表示の仕方です。

必要な箇所(Contact Form 7の独自のフォームタグ名、投稿タイプスラッグ)を変更し、下記のコードをfunctions.phpに記入します。

function dynamic_field_values ( $tag, $unused ) {

    if ( $tag['name'] != 'your-form-tag-name' )  // Contact Form 7内に記入するフィールド名(独自のフォームタグ名)
        return $tag;

    $args = array (
        'numberposts'   => -1, //全件
        'post_type'     => 'your_custom_post_type', // 動的に表示させるカスタム投稿タイプ名(投稿タイプスラッグ)
        'orderby'       => 'title', // ソート対象 - タイトルで並び替え
        'order'         => 'ASC', // ソート順 - 最低から最高へ昇順 (1, 2, 3; a, b, c)
    );

    $custom_posts = get_posts($args);

    if ( ! $custom_posts )
        return $tag;

    foreach ( $custom_posts as $custom_post ) {

        $tag['raw_values'][] = $custom_post->post_title;
        $tag['values'][] = $custom_post->post_title;
        $tag['labels'][] = $custom_post->post_title;
    }

    return $tag;

}

add_filter( 'wpcf7_form_tag', 'dynamic_field_values', 10, 2);

次にContact Form 7内に独自のフォームタグを選択させたい箇所に記入します。

[select your-form-tag-name]

以上です。

参照: wordpress – Contact Form 7 and Custom post type – Stack Overflow
独自のフォームタグを追加する | Contact Form 7 [日本語]
How to display custom post type as a drop-down field in Contact Form 7 – ArcticWP


CONTACT

お問い合わせ

AEDI株式会社

〒710-0801 岡山県倉敷市酒津2549-2

貴社のサービス・商品のブランディング、デザイン、ホームページでお困りのこと、お仕事のご依頼、お見積もり、デザイン、ホームページ制作、その他AEDIのご提供するサービスに関することでご質問等ございましたらお気軽にお問い合わせください。

お問い合わせフォームとお電話より承っております。

岡山のホームページ制作会社・デザイン会社 AEDI株式会社のデザイン事務所 岡山県倉敷市酒津2549-2

お電話でのお問い合わせ: 月-金 9:00〜18:00(祝日を除く)

050-5899-6624