WordPressでよく使うテンプレートタグまとめ

Webサイト制作
サイト制作
2021.05.31


WordPressのテーマ作成をする際によく利用するテンプレートタグや機能をまとめました。

CMS(コンテンツ・マネージメント・システム)としては最もメジャーなWordPressですが、その理由の一つにはカスタマイズが魅力的な点が挙げられると思います。

カスタマイズには必須となるテンプレートタグですが様々な機能を実装するための膨大な数のテンプレートタグが用意されており、1記事では紹介しきれないため今回はよく使う必要最低限のテンプレートタグを目的別に分けてご紹介いたします。

全てコピペで使えますので時短の助けになりましたら幸いです!

※htmlのタグについてはこちらをご覧ください。


目次

そもそもテンプレートタグとは

テンプレートタグとは、WordPressに何かを実行あるいは取得するように指示するものです。
WordPressはPHPのテンプレートで作られていますが、テンプレート上でテンプレートタグを使うことによってシステムを呼び出し、新しく投稿された順に記事をリスト形式で自動で表示させたり、カテゴリーやタグの一覧をサイドバーに表示させたりと色々と便利な機能を実現してくれます。

テンプレートタグの種類

テンプレートタグの種類は大きく分けて5つあります。

  • コンテンツ系  データベースにあるデータを表示させるための関数
  • ループ系  WordPressループを通してデータベースにあるデータを表示させるための関数
  • インクルード系  他のテンプレートを呼び出すための関数
  • 条件分岐系  ページの種類を判別するための関数
  • タグ出力系  JSやウィジェットを表示させるための関数

設置推奨のプラグイン動作用タグ

プラグインの動作に必要なテンプレートタグになります。
この記述が無いとプラグインが作動しない場合がありますので、なるべく設置しましょう。

<?php wp_head(); ?>

head終了タグの直前に挿入します。

<?php wp_footer(); ?>

footer終了タグの直前に挿入します。

インクルードタグ

特定のテンプレートファイルを呼び出すタグになります。

ヘッダーテンプレートのheader.phpを呼び出す

<?php get_header(); ?>

フッターテンプレートのfooter.phpを呼び出す

<?php get_footer(); ?>

サイドバーのテンプレート「sidebar.php」を呼び出す

<?php get_sidebar(); ?>

検索フォームテンプレート「searchform.php」を呼び出す

<?php get_template_part(); ?>

コメントフォームテンプレート「comments.php」を呼び出す

<?php comments_template(); ?>

テーマ内に異なるコメントを表示する場合は、別のファイル(例. short-comments.php)を作成し、

<?php comments_template( '/short-comments.php' ); ?>

のように記述します。

その他任意のテンプレートファイルを呼び出す

<?php include( TEMPLATEPATH . '/ファイル名.php' ); ?>

任意のテンプレートファイル.phpを呼び出すには別のファイル(例. ファイル名.php)を作成し、上記のように記述します。

テンプレートタグ

テンプレートタグとはコンテンツをサイトに表示するためのタグです。

基本情報の出力

「一般設定」で指定したブログ名を出力

<?php bloginfo('name'); ?>

「一般設定」で指定したブログの説明文・キャッチフレーズを出力

<?php bloginfo('description'); ?>

文字コードの指定

<?php bloginfo( 'charset' ); ?>

使用例:

<meta charset="<?php bloginfo( 'charset' ); ?>">

一般設定のサイトの言語を出力

<?php bloginfo( 'language' ); ?>

使用例:

<html lang="<?php bloginfo( 'language' ); ?>">

ブログURLを出力

<?php echo esc_url( home_url( '/' ) ); ?>

ベースとなるCSS(styles.css)のURLを出力

<?php echo get_stylesheet_uri(); ?>

テーマのディレクトリにあたるURLを出力

<?php echo get_template_directory_uri(); ?>

CSSのディレクトリ、または子テーマのディレクトリにあたるURLを出力

<?php echo get_stylesheet_directory_uri(); ?>

タイトルを出力するタグ(区切り線を挿入する場合)

<title><?php wp_title('|', true, 'right'); ?><?php bloginfo('name'); ?></title>

RSSフィードのURLを出力

<?php bloginfo('rss2_url'); ?>

WordPressのバージョンを出力

<?php bloginfo('version'); ?>

外部のjavascriptファイルを読み込み出力

<?php wp_enqueue_script(); ?>

ウィジェットを出力

<?php the_widget(); ?>

管理画面内で設定したサイトのタイトルを出力

<?php bloginfo( 'name' ); ?>

管理画面内で設定したメールアドレスを出力

<?php bloginfo( 'admin_email' ); ?>

Atom feedのURLを出力

<?php bloginfo( 'atom_url' ); ?>

classの追加

bodyにclass名を追加

<?php body_class(); ?>

投稿IDを任意の場所に出力

<?php post_class(); ?>

投稿関連

現在の投稿のタイトルを表示

<?php the_title(); ?>

現在の投稿の本文を出力

<?php the_content(); ?>

現在の投稿の抜粋を表示

<?php the_excerpt(); ?>

※ブログの記事一覧ページなどに利用します。

投稿編集画面で設定されたアイキャッチ画像を表示

<?php the_post_thumbnail(); ?>

現在の記事が属するカテゴリーへのリンクを表示

<?php the_category(); ?>

※必ずループの中で使う必要があります。

現在の記事に付けられたタグを表示

<?php the_tags(); ?>

※必ずループの中で使う必要があります。

現在の投稿の公開時刻を表示

<?php the_time(); ?>

投稿の公開時刻を取得する場合は get_the_time()、表示の場合は、the_time() 取得の場合は、get_the_time() とそれぞれ記述します。

記事の投稿/更新日を出力

<?php the_date(); ?>

表示の場合は、the_date() 取得の場合は、get_the_date() と記述します。

取得したデータを、echoで表示

<?php echo get_the_date(); ?>

投稿のパーマリンクのURLを表示

<?php the_permalink(); ?>

※このタグはループ内で使用しなければなりません。
任意の投稿のパーマリンクを取得は、get_permalink()

投稿作成者のブログ上の表示名を表示

<?php the_author(); ?>

現在の投稿のIDを表示

<?php the_ID(); ?>

取得の場合は、get_the_ID() と記述します。
※必ずループの中で使う必要があります。

固定ページのリンク付きリストを出力

<?php wp_list_pages(); ?>

カテゴリーのリンク付きリストを出力

<?php wp_list_categories(); ?>

タグのリンク付きリスト(タグクラウド)を出力

<?php wp_tag_cloud(); ?>

アーカイブのリンク付きリストを出力

<?php wp_get_archives(); ?>

ナビゲーション関連

現在の投稿より新しい投稿へのリンクを表示

<?php next_post_link(); ?>

※必ずループの中で使う必要があります。

現在の投稿よりひとつ前の投稿へのリンクを表示

<?php previous_post_link(); ?>

※必ずループの中で使う必要があります。

現在のクエリ内で、投稿の次のセットへのリンクを表示

<?php next_posts_link(); ?>

取得の場合は、get_next_posts_link() と記述します。

現在のクエリ内で、投稿の一つ前のセットへのリンクを表示

<?php previous_posts_link(); ?>

取得の場合は、get_previous_posts_link() と記述します。

管理画面上で作成したナビゲーションメニューを表示

<?php wp_nav_menu(); ?>

Author関連

投稿作成者のブログ上の表示名を表示

<?php the_author(); ?>

投稿作成者のウェブサイトへのリンク

<?php the_author_link(); ?>

による投稿

投稿作成者の表示名とともに著者ページへのリンクを表示

<?php the_author_posts_link(); ?>

ユーザーが持つメタデータから好きなものを表示

<?php the_author_meta(); ?>

※ループの外で使う場合には、ユーザー IDを指定する必要があります。
使用例:

<?php the_author_meta( $field, $userID ); ?>

投稿の作成者が公開した投稿の総数を表示

<?php the_author_posts(); ?>

条件分岐タグ

if文を使って特定のページ内容を表示する条件を設定する場合に使います。
例えばパソコン用のコンテンツとスマートフォン用のコンテンツを切り分けたい時、Webサイトを閲覧する端末のヘッダー情報を見て分岐させます。
使用例:

<?php if ( function_exists('wp_is_mobile') && wp_is_mobile() ) :?>
  スマートフォン用コンテンツを配置。
  <?php else: ?>
  パソコン用コンテンツを配置。
<?php endif; ?>

主な条件分岐タグ

メインの投稿ページかを判定

is_home()

フロントページかを判定

is_front_page()

投稿タイプを判定

is_singular()

デフォルトの投稿 => is_singular( ‘post’ )
カスタム投稿タイプ => is_singular( ‘投稿タイプ名’ );

個別の投稿ページかを判定

is_single()

固定ページかを判定

is_page()

ページテンプレートが使われているかを判定

is_page_template()

使用例:

about.php => if ( is_page_template( ‘about.php’ ) )

アーカイブページの条件分岐タグ

各アーカイブページが表示されているかを判定

is_archive()

アーカイブページには、カテゴリー、タグ、タクソノミー、作成者、日付別のものがあります。

ページが $category カテゴリーと関連付けられているかを判定

is_category()

タグのアーカイブページが表示されているかを判定

is_tag()

タクソノミーのアーカイブページが表示されているかを判定

is_tax()

作成者のアーカイブページが表示されているかを判定

is_author()

日付に関連するアーカイブページが表示されているかを判定

is_date()

その他の条件分岐タグ

404 Not Found”エラーページが表示されているかを判定

is_404()

表示中のページが複数のページにまたがるかを判定

is_paged()

2ページ目以降のときに true を返します

ダッシュボードまたは管理パネルが表示されているかを判定

is_admin()

ユーザーがログインしているかを判定

is_user_logged_in()


WordPressは未だ進化し続けており、Codexはこまめに確認することをおすすめします。
テンプレートタグを活用してWordPressのメリットを最大限に引き出したサイトを素早く効率的に作っていきましょう

※もっと詳しくテンプレートタグや各パラメーターを調べたい方はこちら
WordPress Codex 日本語版 テンプレートタグ

SEOやWEB制作に関する情報を検索する

コラム

ピックアップコラム

最新コラム

人気コラム

過去の記事

ご質問やご相談などお気軽にお問い合わせください。

お電話でのお問い合わせはこちら

03-5829-9912

受付時間:平日10:00~19:00(土・日・祝日を除く)