最初に書いておきますと、ここには「Luxeritas」制作者のるなさんの記事以上のことは書いてありません。あくまで備忘録的に書き残しています。
コメントフォームをスリムにしたい
WordPressのコメントフォーム、弱小ブログがコメントをどんどんいただきたいときなんかは、名前・URL・メールアドレスの入力欄ってすごく邪魔なんですよね。別にその情報はいらないし、コメントだけ気軽にポンっと置いておいてほしい。
そんな要望をかなえてくれたのが「Luxeritas」制作者のるなさん。
functions.phpに記載するだけ
Luxeritas > 子テーマの編集 > functions.php に、以下のコードを書き加えるだけで、コメントフォームのURL・メールアドレス・名前の記入欄を消去することができます。
1 2 3 4 5 | // コメントフォームの URL、メール、名前の入力欄を消す add_filter( 'comment_form_default_fields', function( $fields ) { unset( $fields['url'], $fields['email'], $fields['author'] ); return $fields; }, 8 ); |
※設定 > ディスカッション から、「コメントの投稿者の名前とメールアドレスの入力を必須にする」のチェックを外しておいてください。これを外さないと、誰もコメントできないことになります。
URL・メールアドレス・名前のどれかを残したいときは、fields[‘url’]、$fields[‘email’]、$fields[‘author’]の対応するものを外せばOKです。
文言を消す
「メールアドレスが公開されることはありません。」という文字列を消したいので、同じくfunctions.phpに以下のコードを記述します。
1 2 3 4 5 6 7 8 | //「メールアドレスが公開されることはありません。」を消す add_filter( 'thk_comments', function() { ob_start(); comments_template(); $comments = ob_get_clean(); $comments = str_replace( '<p class="comment-notes"><span id="email-notes">メールアドレスが公開されることはありません。</span>', '', $comments ); return $comments; }, 10 ); |
これで完成!
functions.phpに追記するだけなので、1分でできてしまう。
コメント欄の名前・URL・メールアドレスを消したいサイトは今のところ一つだけあるので、そちらで試しに導入しています。1か月たっていますが、「reCAPTCHA v3」を入れているおかげか、スパムは全く来ていません。
どのサイトもこれをやればいいというわけではありませんが、必要に応じて使っていきたいです。