ワードプレスで運営しているブログで、コメントされた内容をサイドメニューなどに表示するには管理画面の左メニューにある「外観」「ウィジェット」から「最近のコメント」というウィジェットを使います。
しかしこのワードプレス標準で装備されているウィジェットだと、ピンバックが表示されてしまう上にカスタムする事も出来ません(コアファイルを書き換えない限り)。
そのためコメントだけを表示したくてもピンバックまで表示されてしまい、実際にサイトを見て書き込みをしてくれたユーザのコメントが全く表示されない事になってしまう場合もあります。
こんな感じです。
2番目がコメントで、あとはサイト内リンクのピンバック(セルフピンバック)が表示されてしまっています。
デザインも整っていないので見づらいです。
ワードプレスに備わっている機能で、他のブログでいうトラックバックに似た機能で、ワードプレス同士のブログでリンクを貼った場合、貼られた方のブログに自動で通知&表示されます。
この機能は自分のサイト内リンクでも有効で、他の記事のURLを貼った場合もピンバックされます。
サイト内リンクでピンバックされないようにするには「http://」を省いた相対パスで記述する事で回避できます。
これらを解決してくれるのが「Better WordPress Recent Comments」というプラグイン。
ピンバックを表示させないようにしてさらにデザインもカスタム出来ます。
プラグインのインストール方法が不明な場合はちら「WordPressのプラグインをインストールする方法3つ」をご覧下さい。
- Better WordPress Recent Commentsの設定
-
インストールして有効化したら左メニュー「BWP RC」から設定を行います。
設定完了後はこのような表示になりました。
- 「General Options」タブ
-
以下の項目を変更しました。
「Show at most」は最大表示数なので5にしました。「Choose an output method」は「Do not show trackbacks/pingbacks」を選択、これでピンバックは非表示になり書き込まれたコメントのみが表示されるようになります。
「Enable gravatars?」にチェックを入れ、数値は30を入力しましたが画像のサイズは30ピクセルになりませんでしたので、後ほど行うCSSコードで調整。
「Trim post titles to」記事タイトルの表示を最大何文字まで表示するか数値を入力します、がここも入力どおりの文字数にならず。
「Trim comments to」コメントのの表示を最大何文字まで表示するか入力、ここも入力どおりにならず。
「Choose a date format」は「Md日」としました。
最大表示文字数について設定できませんでしたが、CSSで設定する事も可能です。
こちら「CSSで出来る!決められた文字数を超えた場合に「…」を表示させるコード」をご覧下さい。 - 「Template Options」タブ
- 「Template for comments」欄に以下のコードを入力しました。
<li class="rcli">%avatar%<span class="rc-author">%time% %author%さんより</span><br /><span class="rc-text">%excerpt%</span><br /><span class="rc-plink">» <a href="%link%">%post_title%</a>へのコメント</span></li>
- スタイルシート
- 管理画面「外観」「テーマ編集」からスタイルシート(style.css)に以下のコードを追記しました。
.rcli { display:block; margin:0 0 20px 0; background:none !important; padding:0 !important; } .rcli img{ width:30px; height:30px; padding: 5px 10px 0 0; float: left; } .rc-text { background: url("★ここにアイコン画像のパス★") no-repeat left center; padding-left: 20px; }
以上で設定完了です。
あくまで当サイトの環境での設定ですので、お使いのテーマのデザインや環境にあわせて調整してください。
[…] ☑ WordPressプラグイン「Better WordPress Recent Comments」で最近のコメント欄からピンバックを非表示に […]
こんにちは。
コメントウィジェットの配置で参考にさせていただきました。
その際、文字の省略について調べてみたので参考までにコメントしておきます。
>Trim comments to
これは最大文字数ではないですね。
最大ワード数です。
ソースを見てもスペースで区切っていくつ、と指定していたので英文を想定しているのでしょうね。
wp-content/plugins/bwp-recent-comments/includes/class-bwp-recent-comments.php
こちらにソースがありました。
余談ですが、ソースを無理やりいじって解決する場合下記のような方法でいけました。
ソースを書き換えるのは最終手段なのでお勧めできませんが
上記ファイルの関数 trim_comment_excerpt の最後の方で
$text = mb_strimwidth(trim($text), 0, 60, ‘…’);
として$textを書き換える。