
目次
the_author_link()の用途
the_author_link()
は、WordPress のテンプレートタグの一つで、投稿者名にリンクを付けて出力する関数です。通常、著者の投稿一覧ページ(author.php
)へのリンクになりますが、プロフィールで「ウェブサイトURL」が登録されている場合は、そちらが優先されてリンク先になります。
the_author_link()基本構文
<?php the_author_link(); ?>
この関数を使うと、以下のようにリンク付きの投稿者名が出力されます。
<a href="https://example.com">山田太郎</a>
※リンク先は著者の「ウェブサイトURL」または「投稿一覧ページ」。
the_author_link()はどんなときに使う?
the_author()
は投稿者名をそのまま出力しますが、the_author_link()
はリンク付きで表示したいときに使います。
the_author_link()の仕組み(出力先の優先順位)
- 投稿者プロフィールに「ウェブサイトURL」が登録されている → その URL にリンクされる。
- 登録がない場合 → WordPress 標準の著者アーカイブページへリンクされる(例:
/author/username/
)。
the_author_link()の出力例
プロフィールにウェブサイトURLあり:
<?php the_author_link(); ?>
<a href="https://example.com">山田太郎</a>
プロフィールにURLがない場合:
<a href="https://yourdomain.com/author/yamada/">山田太郎</a>
the_author_link()の注意点
echo
される関数(出力専用)です。値として取得したいときはget_the_author_link()
は存在しないため、自前で構築する必要があります。- ループ(The Loop)内で使用することが前提です。ループ外で使うと、意図しないユーザー情報になる可能性があります。
- セキュリティ的には
esc_url()
やesc_html()
などで囲いたい場合、カスタム出力がおすすめです。
the_author_link()をカスタマイズしたい場合の代替コード
ウェブサイトURLがあっても使わず、常に「著者アーカイブ」にリンクしたい場合:
<?php
$author_id = get_the_author_meta('ID');
$author_url = get_author_posts_url($author_id);
$author_name = get_the_author();
?>
<a href="<?php echo esc_url($author_url); ?>"><?php echo esc_html($author_name); ?></a>
the_author_link()のまとめ
項目 | 内容 |
---|---|
関数名 | the_author_link() |
役割 | 投稿者名をリンク付きで出力 |
出力先の優先 | 「ウェブサイトURL」→なければ「著者アーカイブ」 |
出力 or 取得 | echo (出力のみ) |
使用場所 | 投稿ループ内 |
カスタマイズ | 必要に応じて get_author_posts_url() と get_the_author() の組み合わせ推奨 |