コメント投稿のウェブサイト欄を消してみた

コメント投稿のウェブサイト投稿欄を消すのに挑戦した際の備忘録です。

でも現在は、コメント投稿フォームのカスタマイズはしない事にしました。
アラシ対策が面倒という事で、コメント自体を受けつけないことにした。

というわけなので、参考程度に読んでね。

CSSによる方法もある。
CSSで非表示

広告


編集場所はどこか

今回はadd_filterによるカスタマイズ。
これは、通常はfunctions.phpに追加するのが普通ということでしょうか。
comments.phpとか探す必要はないということですね。

当方ではfunctions.phpに追加して、動作しました。

広告


編集の全文

実際に当サイトで使ってみた全文を、まずは示します

add_filter('comment_form_default_fields' , function($arg){
$arg['url'] = '';
return $arg;
});
add_filter('comment_form_defaults' , function($arg){
$arg['comment_notes_before'] = '<p class="comment-notes"><span id="email-notes">'
. 'メアド入力は任意です。表示されません。'
. '</span></p>';
return $arg;
});

前半の数行

add_filter('comment_form_default_fields' , function($arg){
$arg['url'] = '';
return $arg;
});

'url'の部分が、ウェブサイト投稿欄を指定している。
さらにメールアドレス投稿欄も削除する場合、$arg['email'] = '';の一文を加える。
つまり変更したいものだけを指定すればいい。

途中からfunction定義に移っていく。
無名関数を使う。
関数名を定義すると外部に干渉することがあると聞いた。
それで関数名を指定しない方法をとりました。

function ($arg) とあります。()の中、つまり引数は省略不可。

後半の数行

add_filter('comment_form_defaults' , function($arg){
$arg['comment_notes_before'] = '<p class="comment-notes"><span id="email-notes">'
. 'メアド入力は任意です。表示されません。'
. '</span></p>';
return $arg;
});

外に影響しないので、変数名は同じもの(今回はarg)を使ってよい。

メアドに関する注意書きの文を変更する。
この指定内容はHTMLタグを含む。

「メールアドレスが公開されることはありません。」が初期値。
好みの文に変更する。

メールを任意とする場合

メールを任意とする場合は、管理画面からその設定をする。
またCSSで、displayがnoneになってないか確認する。

広告