Tag : " comment"

WordPressのコメント欄の必須項目を名前だけにする

2010-09-18 (土)
カテゴリー : Wordpress
タグ :

必須項目を変更したい

WordPressで、各記事へのコメントを記入する欄ですが、初期状態だと名前とメールアドレスが必須項目になっています。名前は入れて欲しいですが、メールアドレスはそれほどでもないというか自分だったら強制されると若干嫌なのでここの機能をばっさり切ります。

コード修正

こちらの記事を参考にさせていただきました
→  For the mind : 《WordPress》コメントのメールアドレス欄を削除する

修正前 wordpress/wp-comments-post.php

if ( get_option('require_name_email') && !$user->ID ) {
	if ( 6 > strlen($comment_author_email) || '' == $comment_author )
		wp_die( __('Error: please fill the required fields (name, email).') );
	elseif ( !is_email($comment_author_email))
		wp_die( __('Error: please enter a valid email address.') );
}

if ( '' == $comment_content )
	wp_die( __('Error: please type a comment.') );

修正後 82,3行目あたりに追加

if ( get_option('require_name_email') && !$user->ID ) {
	if ( 6 > strlen($comment_author_email) || '' == $comment_author )
		wp_die( __('Error: please fill the required fields (name, email).') );
	elseif ( !is_email($comment_author_email))
		wp_die( __('Error: please enter a valid email address.') );
}

//name field required
if(!$user->ID){
    if ('' == $comment_author)
        wp_die( __('Error: please fill the required fields (name)') );
}

if ( '' == $comment_content )
	wp_die( __('Error: please type a comment.') );

あとは「設定」の「ディスカッション」の中にある「他のコメント設定」の「名前とメールアドレスの入力を必須にする」のチェックを外せば完了です。ちなみに追加した部分のエラーメッセージは言語ファイルにない文章なので英語のまま出力されます。後々ローカライズしたいと思います。

※2011/06/12 追記
この変更はwordpressのコアファイルをいじるので、おそらくバージョンアップをさせると元に戻ってしまうと思われます。wordpress自体をバージョンアップさせた時は、wp-comments-post.phpを確認しましょう。面倒ですが、コードが消えていたら再び書いてしまいましょう。こんなことをせずともメール入力の必須解除を実装できるプラグインとかありそうですよね。探していないだけで…見つけた方は是非教えてください。

2010-09-18 (土)

twitter : @krengt

[PR]

人気の記事