WordPressのテンプレートタグとは

この記事には広告を含む場合があります。

記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。

この記事を見てもらっている方は、WordPressオリジナルテーマの自作に取り組んでいる方が多いかと思います。

WordPressオリジナルテーマを自作するには、テンプレートタグとは何か理解することは不可欠です。

これからテンプレートタグとは何かや実際の使い方を解説します。

この記事を読めば、テンプレートタグの概要と使い方を理解することができます。

ゴロー
ゴロー

それでははじめましょう!

テンプレートタグとは

header.phpなどのWordPressテンプレートファイルで使用される関数をテンプレートタグと呼びます。

テンプレートタグはPHPで書かれている関数です。ただし、PHPの関数ですがWordPress内でしか機能しません。

またWordPressにはテンプレートタグ以外のPHPの関数を書くことができます。

ポイント
  • WordPressのテンプレートファイルで使用されるPHPの関数
  • テンプレートタグはWordPress内でしか動かない

テンプレートタグの書き方

テンプレートタグはPHPで書かれていますので、<?php ?> の間に書きます。

具体的には以下のように書きます。

PHP
<?php bloginfo(); ?> 

bloginfo()の部分がテンプレートタグです。

()の中には引数を入れることができます。

テンプレートタグの使い方

では、実際にテンプレートファイル内での書き方を解説します。

まず以下の例を見て下さい。

PHP
<div>
  <?php bloginfo('name'); ?>
</div>

先ほども出てきたbloginfo()を使用しています。

divはHTMLのタグです。

このようにHTMLタグの中にテンプレートタグを入れて使用することができます。

<div>などのHTMLタグで囲わずに使用することも可能です。また、<a href=”<?php echo home_url(); ?>”>のように、タグの中に書くこともできます。

bloginfo()は自身のWordPressサイトの情報を表示するテンプレートタグです。

引数にnameを入れることにより、管理画面で設定したサイト名を表示することができます。

home_url()はWordPressのサイトURLを取得するテンプレートタグです。

ポイント
  • HTMLタグの中にテンプレートタグを入れて使用できる。

テンプレートタグの例

次によく使われるテンプレートタグの例を紹介します。

header.phpでよく使われるタグ

language_attributes()

language_attributes()はWordPressの言語情報を出力するタグです。

WordPressの言語情報とはどういうことか解説します。

WordPressの言語情報とは管理画面で設定したサイトの言語のことです。

language_attributes()の使い方

language_attributes()の使い方を解説します。

このテンプレートタグは管理画面で設定されているサイトの言語を表示したいときに使用します。

具体的には、以下の箇所で使われます。

PHP
<!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head>

例えば、サイトの言語の設定が日本語であれば、以下のように表示されます。

HTML
<!DOCTYPE html>
<html lang=”ja”>
<head>

ループ内でよく使われるタグ

ループとは

ループとは、プログラミングでは一般的にfor文・while文などを使用した繰り返し処理をいいますが、WordPressにおけるループとは、投稿を表示する繰り返しのことです。

例として以下のように書きます。

PHP
<?php while ( have_posts() ) : the_post(); ?>
  <h2><?php the_title(); ?></h2>
  <div><?php the_content(); ?></div>
<?php endwhile; ?>

the_title()

the_title()は投稿のタイトルを出力するタグです。

以下の例を見て下さい。

PHP
<?php if ( have_posts() ) : ?>
  <?php while ( have_posts() ) : the_post(); ?>
      <h2><?php the_title(); ?></h2>
  <?php endwhile;?>
<?php endif; ?>

例では、h2タグの間に入れていますので、h2タグの間に記事のタイトルが出力されます。

本記事を例にとると、本記事はWordPressのテンプレートタグとはというタイトルですので、h2タグの間にWordPressのテンプレートタグとはが出力されるというイメージです。

テンプレートタグは2種類に分類される

テンプレートタグは以下のように2種類に分類されます。

  1. データを取得して出力するもの
  2. データを取得するだけのもの

データを取得して出力するものとは

the_title()を例として説明します。

the_title()を書くとタイトルを出力すると前述しました。

出力するとはテンプレートタグがHTMLのタグとして表示されるということです。

つまりデータは取得したうえで、出力までされるタグがデータを取得して出力するものです。

データを取得するだけのものとは

the_title()と似た名前のテンプレートタグに

get_the_title()というものがあります。

こちらはタイトルを取得するのみです。

HTMLとして出力するには、echoをつけないといけません。

PHP
<?php echo get_the_title(); ?>

HTMLとして表示する必要がなく取得するのみで良ければ、get_the_title()を使用したら良いです。

見分けるには

どちらの分類か見分けるには、タグの頭に、theがついていれば、取得と出力をするもの。getがついていれば、取得のみです。

ポイント
  • theがついていれば取得から出力をするタグ
  • getがついていれば取得のみのタグ

まとめ

  • テンプレートタグとは、WordPressのテンプレートファイルで使用されるPHPの関数
  • HTMLタグの中にテンプレートタグを入れて使用する。
  • テンプレートタグは2種類に分類される
    • データを取得して出力するもの
    • データを取得するだけのもの

いかがでしたでしょうか。

今回はWordPressのテンプレートタグとは何かを解説しました。

皆さんも良いWordPressを〜ではまた/~