ちょっと説明がヘタで申し訳ないのですが、下の画像を見ると、コメントしてくれた方の名前と、名前に「リンク」が張られています。これは「get_comment_author_link」のテンプレートタグを使って表示させています。
コメントした方にリンクが張られています
今回はこの「リンク」についての話題です。
前回書きましたが、この「リンク」はJetpackプラグインのコメントシステムを使って、twitter,facebook,google+などのアカウント情報を元に設定されたりします。私のブログではそうしています。ここで、例えば
「あ、このコメントしてくれた人ってどんな方だろう。プロフィールとか見たいな~。」
と思ってリンク先をクリックすると、今開いているページが切り替わります。
細かいことですが、このリンクは「target=”_blank”」とかターゲット属性を付与できれば、別ウィンドウで開くことができるし、都合がいいのにな~・・・なんて思っていたんですが、方法がありましたので、ご紹介します~。
functions.phpにコードを追記します
以下のコードをテーマフォルダ内にある「functions.php」ファイルの最後尾などに追記します。
<?php add_filter( "get_comment_author_link", "modifiy_comment_author_link" ); function modifiy_comment_author_link( $author_link ){ return str_replace( "<a", "<a target=\"_blank\"", $author_link ); } ?>
やっていること
先ほども書きましたが「get_comment_author_link」が、コメントしてくれた方の名前とリンク先を出力するテンプレートタグですね。それで、「str_replace」関数を使って、ターゲット属性を付与して出力させるように置き換えます。そして、「フィルターフック:add_filter」を使って反映という感じです。
参考リンク
いろいろ情報をさがしましたが、下記リンク先を参考にしました。とても勉強になりました・・・!ありがとうございます。
where to modify get_comment_author_link()?
このページのコメント欄でサンプルを確認できます
このページの下部に、コメント欄があります。サンプルでコメントをいくつか入力しました。
こんな感じで、サンプルコメントを入れておきました
上の画像は、twitter,facebook,google+と、3つのアカウントを使ってログインしてコメントしたものです。それぞれ、コメント者名にリンクが張られていますので、それぞれをクリックすると別ウィンドウで開きます。もしよろしければ、ご参考ください。
このページを共有する