コメントフォーム・リストのカスタマイズ

コメント投稿部分は、基本的にはどのテーマでも同じフォームを出力してテーマのstyle.cssで外観を変えています。コメントフォーム欄をカスタマイズするには、プラグインもしくはフックを用いてカスタマイズを行います。
目次(コメントフォーム)
- 「ウェブサイト」フィールドを除外する
- コメントフォーム部分を変更する
- コメントフォーム内の注意書きを変更する
目次 (コメントリスト)
- 管理画面から設定できる項目
- コメント投稿者にリンクを付与しない
- 自動リンクを無効化する
- コメントの投稿日付・時間を削除
コメントフォームのカスタマイズ
「名前」「メールアドレス」「ウェブサイト」フィールドを除外する
コメントフォームには、デフォルトでは"名前(Name)"、"メールアドレス(Email)"、"ウェブサイト(Website)"が用意されています。
"ウェブサイト"にurlを入れて投稿された場合はコメント投稿者の"名前"にそのURLがリンクされます。
それぞれ非表示にする項目を選んで実装して下さい。
// functions.php(子テーマ)に追加 // オリジナル comment_form in wp-includes/comment-template.php function my_comment_form_fields( $fields){ unset( $fields['author']); // 「名前」を非表示にする場合 unset( $fields['email']); // 「メールアドレス」を非表示にする場合 unset( $fields['url']); // 「ウェブサイト」を非表示にする場合 return $fields; } add_filter( 'comment_form_default_fields', 'my_comment_form_fields');
「ウェブサイト」フィールドを除外するプラグイン
Disable/Hide Comment URL
コメントフォーム部分を変更する
「名前」「メールアドレス」「ウェブサイト」フィールド
変更する場合は、fucntions.php(子テーマ)で以下のように定義してauthor、email、urlの内容を書き換えます。例としてラベルを削除してプレースホルダーを入れてみます。
// functions.php(子テーマ)に追加 // オリジナル comment_form in wp-includes/comment-template.php add_filter( 'comment_form_default_fields', 'my_comment_form_default_fields'); function my_comment_form_default_fields($fields){ $commenter = wp_get_current_commenter(); $req = get_option( 'require_name_email' ); // 「名前」「メールアドレス」必須オプション $aria_req = ( $req ? " aria-required='true'" : '' ); // aria-required='trueの付与有無 $fields = array( // 名前 'author' => '<p class="comment-form-author">' . '<input id="author" name="author" type="text" placeholder="' . __( 'Name' ) . '" value="' . esc_attr( $commenter['comment_author'] ) . '" size="30"' . $aria_req . ' />' . ( $req ? '<span class="required">*</span>' : '' ) . '</p>', // メールアドレス 'email' => '<p class="comment-form-email">' . '<input id="email" name="email" type="text" placeholder="' . __( 'Email' ) . '" value="' . esc_attr( $commenter['comment_author_email'] ) . '" size="30"' . $aria_req . ' />' . ( $req ? '<span class="required">*</span>' : '' ) . '</p>', // URL(ウェブサイト) 'url' => '<p class="comment-form-url">' . '<input id="url" name="url" type="text" placeholder="' . __( 'Website' ) . '"value="' . esc_attr( $commenter['comment_author_url'] ) . '" size="30" /></p>', ); return $fields; }
「コメント」フィールド
変更する場合は、fucntions.php(子テーマ)で以下のように定義してcomment_fieldの内容を書き換えます。例としてラベルを削除してプレースホルダーを入れてみます。
// functions.php(子テーマ)に追加 // オリジナル comment_form in wp-includes/comment-template.php add_filter( "comment_form_defaults", "my_comment_form_defaults"); function my_comment_form_defaults($defaults){ // 'comment_field' => '<p class="comment-form-comment"><label for="comment">' . _x( 'Comment', 'noun' ) . '</label><textarea id="comment" name="comment" cols="45" rows="8" aria-required="true"></textarea></p>', $defaults['comment_field'] = '<p class="comment-form-comment"><textarea id="comment" name="comment" cols="45" rows="8" aria-required="true" placeholder="' . _x( 'Comment', 'noun' ) . '"></textarea></p>'; return $defaults; }
コメントフォーム内の注意書きを削除・変更する
「次のHTML タグと属性が使えます: ~」を削除
コメントフォーム下に表示される注意書きみたいなもの("form-allowed-tags")を非表示にします。
Webマスターツールの「コンテンツ キーワード」で”cite”とか”title”などのキーワードがなぜか上位にきたりします。この部分に1記事2つも3つも付くからでは と思い、消しました。CSSで消す方法もあるのですが、それだとインデックスに拾われてしまうので完全に削除することにします。
// 子テーマのfucntions.phpに追加して下さい。 add_filter( "comment_form_defaults", "my_comment_notes_after"); function my_comment_notes_after( $defaults){ $defaults['comment_notes_after'] = ''; return $defaults; }
CSSで削除する
/* 子テーマのstyle.phpに追加して下さい。*/ #respond .form-allowed-tags { display: none; }
「コメントを残す」を削除
「メールアドレスが公開されることはありません。 * が付いている欄は必須項目です」を削除
// 子テーマのfucntions.phpに追加して下さい。 // オリジナル comment_form in wp-includes/comment-template.php add_filter( "comment_form_defaults", "my_comment_notes_before"); function my_comment_notes_before( $defaults){ $defaults['comment_notes_before'] = ''; return $defaults; }
文言を変更する場合は、$defaults['title_reply']に対象の文章を入れて下さい。
.comment-notes { display: none; }
コメントリストのカスタマイズ
管理画面から設定できる項目
管理画面の「設定」→「ディスカッション」へとすすみ以下の設定を行うことができます。
他のコメント設定
スレッド表示
"コメントをxx階層までのスレッド (入れ子) 形式にする"
コメントに対して「返信」リンクから投稿された場合は、1つのディスカッションとしてスレッド表示されます。
ページネーション
"1ページあたりxxx件のコメントを含む複数ページに分割し、xxxのページをデフォルトで表示する"
設定によりコメント表示のページネーションをしてくれます。
コメントの表示順
"xxxコメントを各ページのトップに表示する"
承認されたコメントの表示順を設定します。"古い"→昇順もしくは"新しい"→降順に表示
コメント投稿者にリンクを付与しない
以下のプラグインでは、「ウェブサイト」フィールドは除外しません(入力してもらう)が、「名前」にリンクが付与されません。
Disable comment author links
自動リンクを無効化する
コメント内にURLがあると自動的にリンクが生成されます。その機能を無効化します。
remove_filter( 'comment_text', 'make_clickable', 9);
コメントの投稿日付・時間を消す
コメントの投稿日と投稿時間を消します。
// 子テーマのfunctions.phpに追加 add_filter( 'get_comment_date', '__return_false', 10, 2); // 日付を非表示 add_filter( 'get_comment_time', '__return_false', 10, 2); // 時間を非表示
その他、コメント表示部分に関わるカスタマイズ
関連記事
-
-
Twenty Fifteen カスタマイズ
WordPress 4.1のデフォルトテーマである「Twenty Fifteen」は三世代前の「Twenty Twelve」に似たテーマで非常にシンプルなテーマにまとまっていますね。カスタマイズをまと
-
-
ソーシャルボタン設置 プラグイン
各種メジャーなソーシャルメディアボタンを設置できるプラグイン WP Social Bookmarking Light 国産プラグイン。国産ゆえ、はてなボタンの設置も可能 ダウンロード Twe
-
-
Twenty Eleven カスタマイズ
目次 author-info 消す 作成者(投稿者)を消す 投稿者情報を表示しない proudly powered by wordpressのリンクをコピーライトに変更
-
-
画像マウスオーバーでキャプションを表示
メディアをアップロードした際に、「キャプション」項目にテキストを設定された画像を挿入した場合はキャプションショートコードが生成され、ページ内の各画像下にその設定したテキストが表示されます。 今回
-
-
コメント欄停止・コメント削除
WordPressでは標準でコメント機能が付いてきます。この投稿ではコメント機能の停止や既に投稿されたコメントを削除する方法を紹介します。 設定による停止方法 新規の投稿に関してコメントを停止
-
-
"コメントを残す" 削除・文言を変更する方法
コメントフォームに表示される「コメントを残す」はWordPress標準で翻訳される要素です。テーマ側でカスタマイズしていない限り表示されます。 ここでは、この要素を削除したり、文言を変更する方法を紹
-
-
ブルー・オレンジ・ピンクと選べるテーマ「Bouquet」をカスタマイズ
プレビューはこちら ダウンロード 目次 ヘッダー画像の高さを変更 アイキャッチをアップロード h1タグがやたら多いので最適化 画像をレスポンシブ対応 フォント「Sorts Mill
-
-
「Contact Form 7」 メッセージの送信に失敗~
この修正はWordPress 3.5で行われているようです。(~3.4.2) Contact Form 7で以下のエラーメッセージが出る場合は、確認してみて下さい。 「メッセージの送信に失敗
-
-
Twenty Fourteen クレジットを非表示・変更方法
Twenty Fourteenにも最下部に「Proudly powered by WordPress」というコピーライトが表示されます。それを削除もしくは変更するには、footer.phpを編集して行
-
-
「タグクラウド」ウィジェット カスタマイズ
タグクラウドは、管理画面ではあまりカスタマイズできません。必要であれば、フィルターフックやプラグインを用いて表示設定や概観の変更を行うことができます。 目次 出力をカスタマイズ 各タグの
Comment
[…] 参照:http://kwski.net/wordpress/1060/ […]
素敵な記事! 読みやすい!
コメントフォーム
ううっphpいじるのこわいなー
WordPress - コメントフォーム・リストのカスタマイズ : https://t.co/TCozjmGLtu
コメントフォーム・リストのカスタマイズ https://t.co/qs0aa8sr6z
[…] 参考 WordPress | コメントフォーム・リストのカスタマイズ […]
[…] コメントフォーム・リストのカスタマイズ […]
[…] Think deeply, Do less, More effective コメントフォーム・リストのカスタマイズ […]
WordPressのコメントフォームのカスタマイズはここが非常に参考になりました。URLやメールの入力欄を削除するなど。ちなみにStinger使ってます。 RT コメント部分のカスタマイズ http://t.co/MB1IRkS7Hy
[…] http://kwski.net/wordpress/1060/ […]
[...] この記事が参考になりました。 http://kwski.net/wordpress/1060/ [...]