ベストセラー人気 WordPress テーマTop 30 詳細

WordPress Quformと KBoard 掲示板連動ソースコード

Last Updated:2021年9月16日| 10のコメント
  • Naver ブログを共有する
  • Naver バンドに共有する
  • Facebook 共有する
  • Twitter 共有する
  • 카카오스토리공유하기

WordPressは、様々なお問い合わせフォームプラグインがあります。 無料のプラグインでは、 Contact Form 7やWPFormsのようなプラグインがあります。 WordPress サイトからの訪問者がQuformお問い合わせフォームを送信したとき KBoardも自動的に投稿されるようにしたい場合は、この記事で紹介するQuformと KBoard 掲示板連動コードを使用することができます。

WordPress Quformと KBoard 掲示板連動ソースコード

WordPress コンタクトフォームお問い合わせフォームQuform

Quformは、現在までに約3万個販売された人気の有料コンタクトフォームのプラグインです。 このブログには、初期からこのコンタクトフォームのプラグインが使用されています。 機能が複雑でなく、サイトの速度にも大きな影響を及ぼさないよう、個人的には満足しています。

単に訪問者に示すための目的のためにContact Form 7で提出されたデータをフロントエンドに表形式で表示したい場合には、 "WordPress Contact Form 7のデータを表示する」で紹介す​​る方法を使用することができます。これにより、以下の画像のように KBoard 掲示板をインストールする必要がなく、CF7データを表形式で一覧表示することができます。

Quform問い合わせ文を KBoardに自動的に公開するソースコード

ユーザーがQuformで製作されたお問い合わせフォームを介してデータを送信すると、データがメールで送信され、管理者ページでも確認が可能です。

訪問者がQuformお問い合わせフォームを送信すると、データが KBoard 掲示板に投稿としても登録されるようにしたい場合は、次のコードを使用することができます。

/* quform과 kboard 연동 */
function my_quform_process(array $result, Quform_Form $form)
{
global $wpdb;
	$contact_sender = $form->getValue('quform_5_3'); // 이름
	$contact_email = $form->getValue('quform_5_5'); // 이메일
	$contact_tel = $form->getValue('quform_5_8'); // 전화번호
	$contact_subject = $form->getValue('quform_5_6');
	$contact_details = $form->getValue('quform_5_7');



			
$current_date = date("YmdHis", current_time('timestamp')); // 현재 날짜
$maincontent = '<br>담당자 이름: ' . $contact_sender . '<br>이메일: ' . $contact_email . '<br>담당자 전화번호: ' . $contact_tel . '<br>제목: ' . $contact_subject. '<br>문의내용: ' . $contact_details . '<br></p>'; // KBoard 글 본문

$contact_title = $contact_sender . '님의 문의'; // KBoard 글 제목

$table_name = $wpdb->prefix . "kboard_board_content";

$result = $wpdb->insert( $table_name, array( 'board_id' => 4, 'member_display' => $contact_sender, 'password' => $contact_tel, 'title' => $contact_title, 'content' => $maincontent, 'parent_uid' => 0, 'category1' => false, 'date' => $current_date, 'update' => $current_date, 'member_uid' => 0, 'comment' => 0, 'vote' => 0, 'like' => 0, 'unlike' => 0, 'secret' => true, 'view' => 0, 'thumbnail_file' => false, 'thumbnail_name' => false, 'category2' => false, 'search' => 1, 'notice' => false, 'status' => false) );


return $result;
}


add_filter('quform_post_process_5', 'my_quform_process', 10, 2);

上記のコードは、例示に過ぎず、Quformお問い合わせフォームIDとフィールドID、 KBoard 掲示板ID等を適切に変更してください。 WordPressを少し知っていれば、上記のコードを簡単に応用して適用することができるので、上記のコードでは、別の説明はしません。

最後に、

以上でQuformデータを KBoardで提出する方法を説明しました。 本文で紹介したコードを応用して、DBテーブルを直接作成、ユーザーが提出したデータを保存することも可能です。

WordPress DBデータをフロントエンドに表示する作業をしている場合 wpDataTablesプラグインを使用すると便利でしょう。 このプラグインは、価格が299ドルで結構高価だが、DBの操作が頻繁場合に便利に活用することができます。

参照



10のコメント

コメント

  1. 上記のコードはどこに入れればいいのでしょうか..;;;;;;; 別の説明はありませんと言われましたが…。

    応答
      • コードはテーマの関数ファイルに追加する必要があります。 チャイルドテーマを作って作業してください。 そうしないと、テーマを更新すると編集/追加が消えます。

        https://cafe.naver.com/wphomepage/145

  2. こんにちは、その記事を見て、Quformに書いた記事がKboardに自動更新される部分を確認しました。 ところで、Quformも3つで、Kboardも3つのときにidや数字を変更してfunctionをXNUMXつコピーして移動したら、再びできませんでした。 ...ㅠㅠお願いします。

    3つのうちXNUMXページは以下のコードで修正してKboardに自動更新されることを確認しました。

    /*家族娯楽館*/
    function my_quform_process(array $result, Quform_Form $form)
    {
    グローバル$ wpdb;
    $contact_id = $form->getValue('quform_4_76'); //会員ID
    $contact_category = $form->getValue('quform_4_16'); //参加部門
    $contact_time = $form->getValue('quform_4_18'); //時間選択
    $contact_name = $form->getValue('quform_4_23'); //家族代表名
    $contact_relationship = $form->getValue('quform_4_24'); //関係
    $contact_birth = $form->getValue('quform_4_27'); //生年月日
    $contact_phone = $form->getValue('quform_4_31'); //携帯電話番号
    $contact_number = $form->getValue('quform_4_33'); //参加者
    $contact_companionfamily = $form->getValue('quform_4_42'); //同伴家族
    $contact_personalinformation = $form->getValue('quform_4_17'); //個人情報の同意
    $contact_password = $form->getValue('quform_4_77'); //本人確認パスワード

    $current_date = date("YmdHis", current_time('timestamp')); //現在の日付
    $maincontent = '会員ID:'。 $contact_id 。 「参加部門:」。 $contact_category 。 「時間選択:」。 $contact_time 。 「家族代表名:」。 $contact_name 。 「関係:」。 $contact_relationship 。 「生年月日:」。 $contact_birth 。 「携帯電話番号:」。 $contact_phone 。 「参加人数:」。 $contact_number 。 「同伴家族:」。 $contact_companionfamily 。 「個人情報の同意:」。 $contact_personalinformation 。 ''; // KBoard 文本文

    $contact_title = $contact_id 。 「あなたの家族の娯楽の受付」。 // KBoard 記事タイトル

    $table_name = $wpdb->prefix 。 "kboard_board_content";

    $result = $wpdb->insert( $table_name, array( 'board_id' => 2, 'member_display' => $contact_id, 'password' => $contact_password, 'title' => $contact_title, 'content' => $maincontent, 'parent_uid' => 0, 'category1' => false, 'date' => $current_date, 'update' => $current_date, 'member_uid' => 0, 'comment' => 0, 'vote' => 0, 'like' => 0, 'unlike' => 0, 'secret' => true, 'view' => 0, 'thumbnail_file' => false, 'thumbnail_name' => false, 'category2' = > false、 'search' => 1、 'notice' => false、 'status' => false) );

    return $result;
    }

    add_filter( 'quform_post_process_4'、 'my_quform_process'、10、2);

    応答
    • こんにちは、ビジョンテック。

      Quformで製作したお問い合わせフォーム(様式)のIDを変えて、Kboard掲示板IDを変えてください。 そして個々のquformフィールドidも変更します。

      quform IDは、一番下のquform_post_process_4の数字部分を実際のQuformのフォームフォームIDに変更してください。
      そしてKBoard掲示板IDはboard_id部分の数字(上記では「2」)を適切に変更してください。
      さらに、quformの個々のフィールドIDを確認して変更してください(例:quform_4_27この部分を適切に変更)。

      うまくいかない場合は、もう一度質問してください。

      ちなみに上記のコードは、有料サービスとして提供しながら作成したコードを公開したものです。 役に立ったら スポンサーを通じてブログの運営を支援することができます。

      寒さで風邪注意してください。

      応答
      • 本当に申し訳ありませんが
        以下のようにIDと数字をすべて変更しましたが、できませんでした...
        忙しいと思いますが、確認してください。

        /* quform と kboard 連動 */
        /*家族百日章*/
        function my_quform_process(array $result, Quform_Form $form)
        {
        グローバル$ wpdb;
        $contact_id = $form->getValue('quform_1_35'); //会員ID
        $contact_target = $form->getValue('quform_1_14'); //ターゲット
        $contact_grade = $form->getValue('quform_1_15'); //グレード
        $contact_category = $form->getValue('quform_1_16'); //参加部門
        $contact_contents = $form->getValue('quform_1_33'); // 投稿
        $contact_agree = $form->getValue('quform_1_17'); //同意するかどうか
        $contact_password = $form->getValue('quform_1_36'); //本人確認パスワード

        $current_date = date("YmdHis", current_time('timestamp')); //現在の日付
        $maincontent = '会員ID:'。 $contact_id 。 「対象:」。 $contact_target 。 「グレード:」。 $contact_grade 。 「参加部門:」。 $contact_category 。 「作文:」。 $contact_contents 。 「同意するかどうか:」。 $contact_agree 。 「本人確認パスワード:」。 $contact_password 。 ''; // KBoard 文本文
        $contact_title = $contact_id 。 「あなたの家族の百日章の受付」。 // KBoard 記事タイトル
        $table_name = $wpdb->prefix 。 "kboard_board_content";
        $result = $wpdb->insert( $table_name, array( 'board_id' => 1, 'member_display' => $contact_id, 'password' => $contact_password, 'title' => $contact_title, 'content' => $maincontent, 'parent_uid' => 0, 'category1' => false, 'date' => $current_date, 'update' => $current_date, 'member_uid' => 0, 'comment' => 0, 'vote' => 0, 'like' => 0, 'unlike' => 0, 'secret' => true, 'view' => 0, 'thumbnail_file' => false, 'thumbnail_name' => false, 'category2' = > false、 'search' => 1、 'notice' => false、 'status' => false) );

        return $result;
        }

        add_filter( 'quform_post_process_1'、 'my_quform_process'、10、2);

        /*家族娯楽館*/
        function my_quform_process(array $result, Quform_Form $form)
        {
        グローバル$ wpdb;
        $contact_id = $form->getValue('quform_4_76'); //会員ID
        $contact_category = $form->getValue('quform_4_16'); //参加部門
        $contact_time = $form->getValue('quform_4_18'); //時間選択
        $contact_name = $form->getValue('quform_4_23'); //家族代表名
        $contact_relationship = $form->getValue('quform_4_24'); //関係
        $contact_birth = $form->getValue('quform_4_27'); //生年月日
        $contact_phone = $form->getValue('quform_4_31'); //携帯電話番号
        $contact_number = $form->getValue('quform_4_33'); //参加者
        $contact_companionfamily = $form->getValue('quform_4_42'); //同伴家族
        $contact_personalinformation = $form->getValue('quform_4_17'); //個人情報の同意
        $contact_password = $form->getValue('quform_4_77'); //本人確認パスワード

        $current_date = date("YmdHis", current_time('timestamp')); //現在の日付
        $maincontent = '会員ID:'。 $contact_id 。 「参加部門:」。 $contact_category 。 「時間選択:」。 $contact_time 。 「家族代表名:」。 $contact_name 。 「関係:」。 $contact_relationship 。 「生年月日:」。 $contact_birth 。 「携帯電話番号:」。 $contact_phone 。 「参加人数:」。 $contact_number 。 「同伴家族:」。 $contact_companionfamily 。 「個人情報の同意:」。 $contact_personalinformation 。 ''; // KBoard 文本文
        $contact_title = $contact_id 。 「あなたの家族の娯楽の受付」。 // KBoard 記事タイトル
        $table_name = $wpdb->prefix 。 "kboard_board_content";
        $result = $wpdb->insert( $table_name, array( 'board_id' => 2, 'member_display' => $contact_id, 'password' => $contact_password, 'title' => $contact_title, 'content' => $maincontent, 'parent_uid' => 0, 'category1' => false, 'date' => $current_date, 'update' => $current_date, 'member_uid' => 0, 'comment' => 0, 'vote' => 0, 'like' => 0, 'unlike' => 0, 'secret' => true, 'view' => 0, 'thumbnail_file' => false, 'thumbnail_name' => false, 'category2' = > false、 'search' => 1、 'notice' => false、 'status' => false) );

        return $result;
        }

        add_filter( 'quform_post_process_4'、 'my_quform_process'、10、2);

      • 連動しなければならない KBoard 掲示板ページURLとQuformコンタクトフォームページURLをメニューのお問い合わせページからお送りください。
        後で一度確認してみましょう。

      • まず、
        https://gwangjinfamily.com/가족백일장-신청하기/ https://gwangjinfamily.com/가족백일장-참여현황/

        第二に
        https://gwangjinfamily.com/가족오락관-신청하기/ https://gwangjinfamily.com/가족오락관-참여현황/

        XNUMX番目は
        https://gwangjinfamily.com/가족체험공작소-신청하기/ https://gwangjinfamily.com/가족체험공작소-참여현황/

        です。 ありがとうございます。

      • ちなみに、それぞれ一つずつ適用すれば良いです。
        3つを一度に書くとエラーが出ます。

      • エラーが発生した理由は、my_quform_process関数名が原因であるようです。

        各フィルタのmy_quform_processの関数名を変更してください。 XNUMXつの項目を変えればいいでしょう。 関数名が一致しないようにしてください。