comment_author_url()

comment_author_url()
目次

comment_author_url()の用途

comment_author_url() は、コメント投稿者が入力したウェブサイトのURLを出力する関数です。
コメントフォームの「ウェブサイト」欄に入力されたURLを、そのまま画面に表示します。

コメント欄で、投稿者のウェブサイトを紹介したい場合に利用します。
たとえば「投稿者名をクリックするとその人のウェブサイトに移動する」といったリンクを作るときに便利です。

comment_author_url()の使い方

基本的な使い方は、テンプレートタグを呼ぶだけです。

<?php comment_author_url(); ?>

これでURL文字列が出力されます。
たとえば「https://example.com」と入力されていれば、そのURLが表示されます。

取得だけしたい場合

URLを変数として取得するだけで出力しない場合は、次の関数を使います。

$url = get_comment_author_url();

この戻り値をもとに、自分でHTMLを組み立てられます。

投稿者名をリンクにする例

通常、投稿者の名前をURLにリンクする場合は、以下のように書きます。

<?php
$url = get_comment_author_url();
$name = get_comment_author();
if ($url) {
    echo '<a href="' . esc_url($url) . '" rel="nofollow ugc">' . esc_html($name) . '</a>';
} else {
    echo esc_html($name);
}
?>
  • esc_url() はURLを安全に整形する
  • esc_html() は投稿者名をエスケープする
  • rel="nofollow ugc" はスパム対策の属性

関連する関数

  • comment_author()
    • 投稿者の名前を表示する
  • comment_author_email()
    • 投稿者のメールアドレスを表示する(公開には注意)
  • comment_author_link()
    • 投稿者名をリンクにしたHTMLを自動で出力する
  • get_comment_author_url()
    • 投稿者URLを取得だけする(出力しない)

comment_author_link() はウェブサイトURLが設定されている場合、自動的にリンクを作ってくれる便利な関数です。

comment_author_url()の注意点

  • 投稿者がURLを入力しなかった場合、空文字列が返ります。
  • URLは自動でesc_url()が適用され、安全に処理されます。
  • コメントスパム対策として、リンクを表示する場合はnofollow属性を付けましょう。
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

初めてホームページを作成したのは1996年。
2000年よりフリーランスで主に中小企業、学校、各種公的団体、個人事業主のWordPressを活用したホームページ制作を行っています。WordPressテーマはそれぞれのクライアントに合わせて作成しています。
WordPressを活用したサイト運営のための情報発信をしていきます。

目次