
この記事は【2020年6月15日】が最後の更新のため、記事の内容が古い可能性があります。
WordPressの掲示板プラグイン「bbPress」を
使ってサイト制作をしています。
その中でやったことなどをメモ的な感じで書いていきます。
今回は、このように返信フォーム内に任意のフィールドを
追加させて表示させようと思います。
完成イメージ
返信フォームにメールアドレス(任意)とWEBサイトのフィールドを表示し、
投稿したら、コメント欄にアイコンが表示されるような感じにしています。
さっそくですが、その際のコードはこちら
functions.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
<?php add_action ( 'bbp_theme_before_reply_form_content', 'bbp_extra_reply_fields'); function bbp_extra_reply_fields() { $yousermail = get_post_meta( bbp_get_reply_id(), 'bbp_youser_mail', true); $yousersite = get_post_meta( bbp_get_reply_id(), 'bbp_yousersite', true); echo '<fieldset class="bbp-form">'; echo '<p><label for="bbp_youser_mail">メールアドレス(任意)</label><br>'; echo "<input type='text' name='bbp_youser_mail' value='".$yousermail."'></p>"; echo '<p><label for="bbp_yousersite">WEBサイト(任意)</label><br>'; echo "<input type='text' name='bbp_yousersite' value='".$yousersite."'></p>"; echo '</fieldset>'; } add_action ( 'bbp_new_reply', 'bbp_save_extra_fields', 10, 1 ); add_action ( 'bbp_edit_reply', 'bbp_save_extra_fields', 10, 1 ); function bbp_save_extra_fields($reply_id) { if (isset($_POST) && $_POST['bbp_youser_mail']!='') update_post_meta( $reply_id, 'bbp_youser_mail', $_POST['bbp_youser_mail'] ); if (isset($_POST) && $_POST['bbp_yousersite']!='') update_post_meta( $reply_id, 'bbp_yousersite', $_POST['bbp_yousersite'] ); } add_action('bbp_theme_after_reply_content', 'bbp_show_extra_fields'); function bbp_show_extra_fields() { $reply_id = bbp_get_reply_id(); $value1 = get_post_meta( $reply_id, 'bbp_youser_mail', true); $value2 = get_post_meta( $reply_id, 'bbp_yousersite', true); echo "<div style='text-align:right;'>"; if(empty($value1)){ }else{ echo "<a href='mailto:".antispambot($value1)."'><i class='far fa-envelope fa-2x fa-fw text-dark'></i></a>"; } if(empty($value2)){ }else{ echo "<a href='".$value2."' target='_blank'><i class='fas fa-external-link-alt fa-2x fa-fw text-dark'></i></a>"; } echo "</div>"; } ?> |
作っている掲示板は、ログインなしで誰でも書き込めるようにしているのと
フォーラム別にフィールドを切り替えたいので、標準のメールアドレスやウェブサイトの項目は使用せず(登録制に切り替えた時に使う日が来るかな?)
任意で投稿できるようにしています。
今回紹介したのは、全ての返信フォームに表示されますが
いろいろ試して見てください。
bbPressもいろいろカスタムできそうなので
今後も書いていこうと思います。
掲示板サイトも近日公開するので、その際にでも紹介させて頂きます。
「スタードメイン」は、年額100円からの独自ドメイン+無料サーバーも付いてきます。
WordPressも使えるので、練習も兼ねてお手軽にサイト運営ができちゃいます。
ドメイン取得は同じところで取得しておくと便利ですよ。
お名前.comは1円から購入(1年間)できるドメインがあるので、いろいろと便利で経済的です。
WordPressも使えるので、練習も兼ねてお手軽にサイト運営ができちゃいます。

ドメイン取得は同じところで取得しておくと便利ですよ。
お名前.comは1円から購入(1年間)できるドメインがあるので、いろいろと便利で経済的です。

関連記事
2022/09/17
ワードプレスの管理画面の投稿一覧に、最終更新日を表示させる方法です。 記事によっては何度もリライトを繰り返す場合もあります。特定の記事であれば、検索で探したり該...
2022/09/09
Wordpressの管理画面にある投稿一覧のワード検索にて、カスタムフィールドの内容をを含める方法です。カスタムフィールドを修正したいけど、記事が大量にあったり...
2022/09/03
ワードプレスのアーカイブやカテゴリーページで、特定のカテゴリーのみ並び順を変更したい場合のやり方です。 <?php query_posts($query_...
2022/08/24
ブログなどで「この記事は○年前の内容です」など表示されるのを見かけたことはありませんか? 技術や情報系の記事では、最新の情報では無いと現在では役に立たないことも...
2022/08/08
ワードプレスのカテゴリ一覧などを任意に並び替えて表示。最終更新日を最初に表示させたい時など状況によって表示順を変えたい時の方法です。 デフォルトでは投稿日が新し...