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

wp-1086

コメント投稿部分は、基本的にはどのテーマでも同じフォームを出力してテーマのstyle.cssで外観を変えています。コメントフォーム欄をカスタマイズするには、プラグインもしくはフックを用いてカスタマイズを行います。

目次(コメントフォーム)

  1. 「ウェブサイト」フィールドを除外する
  2. コメントフォーム部分を変更する
  3. コメントフォーム内の注意書きを変更する

目次 (コメントリスト)

  1. 管理画面から設定できる項目
  2. コメント投稿者にリンクを付与しない
  3. 自動リンクを無効化する
  4. コメントの投稿日付・時間を削除

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

「名前」「メールアドレス」「ウェブサイト」フィールドを除外する

コメントフォームには、デフォルトでは"名前(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);  // 時間を非表示


その他、コメント表示部分に関わるカスタマイズ

「編集(Edit)」リンクの非表示方法

  • このエントリーをはてなブックマークに追加

関連記事

n__1102

RSS/Atomフィード カスタマイズ

RSSフィードのカスタマイズ 標準で出力されるフィード WordPressの各種ページで出力されるフィードは以下になると思います。 投稿:投稿のフィード @全てのページ サイトのコメント:

no image

Google+ プラスワン(+1)ボタンの設置

Google+の+1ボタンの設置はプラグインを使用しなくても容易に実装できるようです。ソーシャルボタン設置のプラグインはこちらにいちおうまとめています。 プラスワン(+1)ボタンの設置コード 公式

no image

パーマリンク・スラッグなどURL カスタマイズ

管理画面からの設定 管理画面の「設定」→「パーマリンク設定」で以下の設定が可能です。 共通設定 色々なタグの組み合わせで、URLをカスタマイズできます。 パーマリンク設定の画面に利用可

n__twenty-twelve

Twenty Twelve 投稿日・投稿者を非表示に

TwentyTwelveのちょっとした部分をカスタマイズする方法を紹介していきます。 また、子テーマで出力部分を変更する際に、翻訳が必要な部分//_()の部分がでてきますので、以下の投稿も参考に

1095

「続きを読む」(moreタグ)をカスタマイズ

WordPressではほとんどのテーマでは、複数の投稿を表示するアーカイブページ(カテゴリー別、タグ別、年月日別、作成者別など)ではmoreタグ(<!--more-->)を挿入することで、

no image

Pocketボタンの設置

日本のブログでは、4大SNS(Twitter, はてな, Facebook, Google+)に加えて最近では、Pocket(以前は、Read it later)もよく見かけますよね。追加してみました

n__1098

テーマ ブックマーク 2013

2012 フリーテーマ トップ 20 Top 20 Free WordPress Themes of 2012 http://ow.ly/wMGjZ ハイクオリティフリーテーマ 3月 20 Top

871

Tumblrの投稿をウィジェットに表示できる「Tumblr Widget」

このブログでは、サイドバーウィジェットに「Tumblr」に投稿したブックマーク一覧を表示させています。プラグインは「Tumblr Widget」を使用しています。ダウンロード 「This plugi

1094

テーブル実装プラグイン「TablePress」 + レスポンシブ対応

「TablePress」は、WordPressにテーブルを実装できるプラグインです。専用のレスポンシブ化のプラグインもリリースされています。ダウンロード デモ (PCの場合はブラウザの幅狭めてみたり

no image

スライダー・ギャラリー プラグイン

WordPressにギャラリーが実装できるプラグインをまとめてみました。 順番はオススメ順です。 Simple Responsive Slider #ショートコード #テンプレート #ウ

Comment

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です


*

PAGE TOP ↑