WordPress Contact Form 7과 KBoard 連動するソース

WordPress Contact Form 7で提出するデータは、DBに保存されません。

もしDBに保存されるようにしたい場合は、同じ開発者が作成した フラミンゴ라는 애드온 プラグイン을 설치할 수 있습니다.というアドオンプラグインをインストールすることができます。 또는,または、 Quform 同じ有料のプラグインを使用することも考慮してみることができます。

参考までに、単純に示すことを目的として Contact Form 7で送信したデータをフロントエンドに表形式で表示したい場合WordPress Contact Form 7のデータを表示する「で紹介する方法を使用することができます。これにより、下記の方法のようにKboard掲示板をインストールする必要なく、次の画像のように実装できます。

[この記事は2022年6月29日に最終更新されました。 ]

WordPress Contact Form 7과 KBoard 連動するソース

KBoard(Kboard)掲示板を運営している場合はContact Form 7で送信したデータを KBoard スレッドに連動することが可能です。

次のコードを使用すると、コンタクトフォームを作成し、ユーザーが送信をクリックすると、データを KBoard (チャイルドテーマをご利用ください。)

/* Contact Form과 kboard 연동 */
function action_wpcf7_before_send_mail($WPCF7_ContactForm)
{
global $wpdb;
$wpcf7 = WPCF7_ContactForm::get_current();
$submission = WPCF7_Submission::get_instance();
$data = $submission->get_posted_data();

$yourname = $data['your-name'];
if(isset($data['your-subject'])) {
$formtitle = '[서비스 문의] ' . $data['your-subject'];
} else {
$formtitle = '후원 문의 (' . $yourname . ')';
}

$email = $data['your-email'];
$current_date = date("YmdHis", current_time('timestamp'));
$thiscontent = $data['your-message'];
$telephone = $data['your-phone'];
$yoururl = $data['your-url'];
$inquirytype = $data['inquiry-type'];
$main_content = '<table width="100%" border="1" cellspacing="0" cellpadding="6" BORDERCOLOR="#E8E8E8">
<tr>
<td width="23%">제목</td>
<td width="77%">' . $formtitle . '</td>
</tr>
<tr>
<td width="23%">이름</td>
<td width="77%">' . $yourname . '</td>
</tr>
<tr>
<td>이메일</td>
<td>' . $email . '</td>
</tr>
<tr>
<td>연락처</td>
<td>' . $telephone . '</td>
</tr>
<tr>
<td>URL</td>
<td>' . $yoururl . '</td>
</tr>
<tr>
<td>문의 유형</td>
<td>' . $inquirytype . '</td>
</tr>
<tr>
<td>문의 내용</td>
<td>' . $thiscontent . '</td>
</tr>

</table>';

$table_name = $wpdb->prefix . "kboard_board_content";
$wpdb->insert( $table_name, array( 'board_id' => 1, 'member_display' => $yourname, 'password' => 'password_you_want', 'title' => $formtitle, 'content' => $main_content, 'parent_uid' => 0, 'category1' => '일반', 'date' => $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) );

// return current cf7 instance
return $wpcf7;
}
add_action('wpcf7_before_send_mail', 'action_wpcf7_before_send_mail', 10, 1);

KBoard 게시판 ID, 비밀번호 등은 적절히 설정하시기 바랍니다.掲示板ID、パスワードなどは適切に設定してください。 필드에 따라 조금씩 응용하셔야 합니다.フィールドに基づいて少しずつ応用する必要があります。 옵션 필드를 추가한 경우에는 다음과 같이 연동시킵니다.オプションフィールドを追加した場合には、次のように連動させます。

$content_uid = $wpdb->insert_id;

$wpdb->insert( $table_name, array( 'content_uid' => $content_uid, 'option_key' => company, 'option_value' => $yourcompany ) );

この方法を利用すれば、 KBoardだけでなく、コンタクトフォームデータを別のDBのテーブルにも追加することができます。

위의 코드는 Contact Form 7와 Kboard가 更新되는 경우 잘 작동하지 않을 수도 있습니다.上記のコードは、Contact Form XNUMXとKboardが更新された場合にうまく機能していない場合があります。 하지만 원리는 동일하기 때문에 적절히 변경하여 사용하시기 바랍니다.しかし、原理は同じであるため、適切に変更して使用してください。

同様の方法で 重力とQuformで作成したコンタクトフォームから KBoardで連動することも可能です。 Quformお問い合わせフォーム KBoardと連動するソースは ここを参照してみてください。

コンタクトフォームから KBoardで連動する作業に困難を経験する場合 ここでサービス(有料)をご依頼することができます。

メモ:

一部の記事にはアフィリエイトリンクが含まれている場合があり、パートナーの活動で一定額の手数料を受け取ることがあります。

コメントを残す

*電子メール情報は公開されません。