ニケッチャニッキ

はてなブログ・WordPressカスタマイズ・Androidプログラミング

WordPressコメント入力欄のe-mailやURLを非表示にする方法2つ

WordPressでコメントのメールアドレスやURL入力欄を非表示にする方法を2つ紹介します。

cssで入力欄を隠す方法と、PHPを修正して入力欄を出力させないようにする方法です。WordPress関数の扱い方に慣れていない方はcssで隠す方法をお試しください。

事前にディスカッション設定でメールアドレス必須入力を解除しておいてください。

入力欄を隠す方法

PHPコードを触ることなく簡単にできる方法です。

デフォルトではメールアドレス入力欄は「comment-form-email」、URLは「comment-form-url」というクラス名が付けられているので、こちらをdisplay:noneと設定するだけで非表示にできます。ちなみに名前は「comment-form-author」です。

example
.comment-form-email{
    display:none;
}

また「メールアドレスが公開されることはありません。」というメッセージを消す場合は「span#email-notes」のdisplayをnoneに設定してください。

この方法でうまくいかない場合、お使いのテーマがデフォルトのクラス名以外を使っているかもしれません。chromeをお使いの場合は簡単にクラス名を調べられますので、次の画像のように操作してみてください。

入力欄を出力しないようにする方法

PHPを修正することによって、そもそも入力欄を出力させないようにする方法です。修正するのはcomments.phpです。

comments.phpでは、comment_form関数を使ってコメント入力欄を出力しています。修正したい項目の引数のみ渡せば、他はデフォルト値が利用されます。

メールアドレスやURLの入力欄はfieldsという配列に含まれていて、要素「メールアドレス」のキーは「email」、「URL」のキーは「url」です。それぞれの要素の値を空にすれば、項目を削除できます。

「メールアドレスが公開されることはありません。」というメッセージはcomment_notes_beforeというキーを指定すると修正できます。

$args = array(
    'fields' => array(
        'email'  => '',
        'url'    => '',
    ),
    'comment_notes_before' =>'',
);
comment_form( $args );

他にもコメント送信ボタンの文字を変更したり、好きなメッセージを表示させたりと、柔軟なカスタマイズができます。

参考WordPress Codex