WordPress では、用意されている専用タグを利用しながらテーマを作っていく。専用タグは PHP の function機能によって事前にあらゆるものが定義されている。
WordPressタグは機能の重複もあるし、良くも悪くも PHP - ハウルの動く城式言語と同じ感じ。公式wiki も非常に分りづらい。いずれこのセクションで綺麗に整理する。
テンプレートタグ
テンプレートタグは、WordPressタグの中でも特に「テーマ作成用」に用意されているタグ。データベースからあらゆる情報を引っ張ってきてくれる。
テンプレートタグ群は wp-includesディレクトリの中で9つに分類されて収納されている。
- general-template.php
 
- nav-menu-template.php
 
- author-template.php
 
- post-thumbnail-template.php
 
- post-template.php
 
- category-template.php
 
- bookmark-template.php
 
- link-template.php
 
- comment-template.php
 
general-template.php(一般タグ)
get_header
 | 
header.php を取得
 | 
get_sidebar
 | 
sidebar.php を取得
 | 
get_footer
 | 
footer.php を取得
 | 
get_search_form
 | 
searchform.php を取得。無ければ 組み込みの検索フォーム
 | 
get_template_part
 | 
指定の自作テンプレートファイルを取得
 | 
comments_template
 | 
comments.php を取得。無ければ組み込みの検索フォーム
 | 
wp_login_url
 | 
ユーザをログインさせるためのリンクを返す
 | 
wp_loginout
 | 
ログイン・ログアウトのリンクを表示
 | 
wp_logout_url
 | 
ユーザを安全にログアウトさせるさせるためのリンクを返す
 | 
wp_login_form
 | 
ログインフォームを表示
 | 
wp_lostpassword_url
 | 
パスワードを再取得するためのリンクを表示
 | 
wp_registar
 | 
ユーザ登録のリンクを表示。許可している場合のみ
 | 
wp_meta
 | 
sidebar.php やメタウィジェットに任意のリンクを追加
 | 
bloginfo
 | 
サイトタイトルやサイトURLなど、サイトに関するあらゆる情報を表示
 | 
get_bloginfo
 | 
PHPコード内で利用するためにサイトに関する情報を取得
 | 
get_current_blog_id
 | 
ブログIDを取得。マルチサイト運用時に条件分岐させたい時など
 | 
wp_title
 | 
現在のページタイトルを表示。ver 4.4以降から非推奨
 | 
wp_get_document_title
 | 
function.php に記述。現在のページタイトルを取得。ver 4.4以降から推奨
 | 
single_post_title
 | 
個別記事ページでループの外に記事タイトルを表示
 | 
post_type_archive_title
 | 
現在の投稿タイプのアーカイブページのタイトルを取得
 | 
single_cat_title
 | 
現在のページのカテゴリタイトルを取得
 | 
single_tag_title
 | 
現在のページのタグタイトルを取得
 | 
single_term_title
 | 
現在のページのタームタイトルを取得。通常はカスタム分類ページで利用
 | 
single_month_tilte
 | 
現在のページの月・年名を取得。月別アーカイブページにて利用
 | 
get_archives_link
 | 
アーカイブページへのリンクを取得
 | 
wp_get_archives
 | 
日付ベースのアーカイブリストを表示
 | 
calender_week_mod
 | 
週が始まる日付を取得
 | 
get_calender
 | 
カレンダーを表示
 | 
delete_get_calender_cache
 | 
取得したカレンダーに関するキャッシュを削除
 | 
allowed_tags
 | 
許可されている全てのタグを属性と一緒に HTMLフォーマットで表示
 | 
wp_enqueue_script
 | 
依存関係を解決しつつ適切なタイミングで生成されたページにリンク。JavaScript のリンク時に推奨
 | 
wp_nav_menu
 | 
ナビゲーションメニューを表示
 | 
walk_nav_menu_tree
 | 
ナビゲーションメニューの HTMLリストを取得
 | 
author-template.php(投稿者タグ)
get_author
 | 
投稿者の表示名を取得。ループ内で利用
 | 
get_the_author
 | 
投稿者のユーザ名を取得。ループ内で利用
 | 
the_author_link
 | 
投稿者のユーザ名を Webサイトリンク付きで表示
 | 
get_the_author_link
 | 
PHP内で使うデータとして投稿者のユーザ名を Webサイトリンク付きで取得
 | 
the_author_meta
 | 
投稿者のメタ情報から好きな項目を表示
 | 
get_the_author_meta
 | 
PHP内で使うデータとして投稿者のメタ情報から好きな項目を取得
 | 
the_author_posts
 | 
投稿者の投稿数を表示
 | 
get_the_author_post
 | 
PHP内で使うデータとして投稿者の投稿数を取得
 | 
the_author_post_link
 | 
投稿者の記事一覧ページへのリンクを表示
 | 
wp_dropdown_users
 | 
ドロップダウンメニューを利用してユーザ一覧を表示
 | 
wp_list_authors
 | 
サイトの投稿者リストを表示
 | 
get_author_posts_url
 | 
投稿者の記事投稿アーカイブページへの URL を取得
 | 
post-thumbnail-template.php(アイキャッチ画像タグ)
get_post_thumbnail_id
 | 
アイキャッチ画像の ID を取得
 | 
the_post_thumbnail
 | 
アイキャッチ画像を表示
 | 
get_the_post_thumbnail
 | 
アイキャッチ画像の HTMLタグを出力
 | 
post-template.php(投稿タグ)
body_class
 | 
bodyタグに現在の投稿IDをクラス属性として付加
 | 
next_image_link
 | 
次の画像へのリンクを表示。通常は attachment.php で利用
 | 
previous_image_link
 | 
前の画像へのリンクを表示
 | 
next_post_link
 | 
次の投稿へのリンクを表示。通常は記事ページで利用
 | 
previous_post_link
 | 
前の投稿へのリンクを表示
 | 
next_posts_link
 | 
次の複数の投稿へのリンクを表示。通常は記事ページで利用
 | 
previous_posts_link
 | 
前の複数の投稿へのリンクを表示
 | 
post_class
 | 
現在の投稿IDをクラス属性として取得
 | 
post_password_required
 | 
投稿表示にパスワード入力が必要かどうかをチェック
 | 
posts_nav_link
 | 
前ページと次ページのナビリンクをセットで表示
 | 
the_content
 | 
投稿本文を表示。ループ内で利用。パラメータで「続きを読む」などの文字列も指定できる
 | 
the_excerpt
 | 
投稿の抜粋に [...] を付けて<p>で囲んで表示
 | 
get_the_excerpt
 | 
投稿の抜粋に [...] を付けて取得。ループ内で利用
 | 
the_excerpt_ress
 | 
投稿の抜粋をフィード形式で出力
 | 
the_ID
 | 
現在の投稿の ID を取得。ループ内で利用
 | 
post_meta
 | 
投稿メタ情報を表示
 | 
the_title
 | 
現在の投稿タイトルを取得。ループ内で利用
 | 
get_the_title
 | 
投稿ID を指定して投稿タイトルを取得
 | 
title_attribute
 | 
投稿タイトルを HTMLタグなどで装飾して表示
 | 
the_title_rss
 | 
フィード用に整形された投稿タイトルを出力
 | 
wp_link_pages
 | 
投稿のページングリンクを出力
 | 
get_attachment_link
 | 
添付ファイルの URL を取得
 | 
wp_get_attachment_link
 | 
より詳細な除法を含んだ添付ファイルへのリンクを取得
 | 
the_attachment_link
 | 
画像サイズなどを指定しつつ添付ファイルへのリンクを取得
 | 
is_attachment
 | 
添付ファイルの有無をチェック
 | 
wp_attachment_is_image
 | 
添付ファイルが画像かどうかチェック
 | 
wp_get_attachment_image
 | 
添付ファイルが画像の場合、その img要素を取得
 | 
wp_get_attachment_image_src
 | 
添付ファイルが画像の場合、その img要素の URL, 高さ, 幅を取得
 | 
wp_get_attachment_metadata
 | 
添付ファイルの ID を指定してメタデータを取得
 | 
get_the_date
 | 
投稿の日付を取得
 | 
single_month_title
 | 
投稿の月・年名を表示
 | 
the_date
 | 
記事の投稿日 / 更新日を表示
 | 
the_date_xml
 | 
YYYY-MM-DD形式で記事の投稿日 / 更新日を表示
 | 
the_modified_author
 | 
投稿を最後に編集したユーザを表示
 | 
the_modified_date
 | 
投稿を更新した日付(時刻)を表示
 | 
the_modified_time
 | 
投稿を更新した時刻(日付)を表示
 | 
the_time
 | 
投稿の公開日時を表示。ループ内で利用
 | 
get_the_time
 | 
投稿の公開日時を取得
 | 
 the_shortlink
 | 
投稿に短縮URL があればそれを表示
 | 
get_the_shortlink
 | 
投稿に短縮URL があればそれを取得
 | 
category-template.php(カテゴリータグ)
category_description
 | 
カテゴリーの説明を取得
 | 
single_cat_title
 | 
ループの外側でカテゴリー名を表示
 | 
the_category
 | 
現在のカテゴリーリンクを表示。ループ内で利用
 | 
the_category_rss
 | 
記事が所属するカテゴリーをフィード用にフォーマットされた形式で出力
 | 
the_dropdown_categorys
 | 
ドロップダウンメニューを利用してカテゴリーリストを表示
 | 
wp_list_categorys
 | 
リンク付きでカテゴリーリストを表示
 | 
single_tag_title
 | 
現在のページのタグタイトルを表示
 | 
tag_description
 | 
タグの説明を表示
 | 
the_tags
 | 
記事のタグ一覧を表示
 | 
wp_geterate_tag_cloud
 | 
タグクラウドを生成
 | 
wp_tag_cloud
 | 
タグクラウドを表示
 | 
term_description
 | 
タームID やタクソノミーを指定して特定のタームの説明を取得
 | 
single_term_title
 | 
現在のページのタームタイトルを取得。通常はカスタム分類ページで利用
 | 
get_the_term_list
 | 
指定のカスタム分類のターム一覧をリンク付きで表示
 | 
the_terms
 | 
記事に付けられたタームを表示
 | 
the_taxonomes
 | 
記事のカスタム分類のリストをリンク付きで表示
 | 
bookmark.php(ブックマークタグ)
wp_list_bookmarks
 | 
サイト内へのリンクを自由に指定してリスト表示
 | 
get_bookmark
 | 
ブックマークリンクID を元にしてブックマークデータを取得
 | 
get_bookmark_field
 | 
単一のブックマークデータを取得
 | 
get_bookmarks
 | 
複数のブックマークデータを取得
 | 
link-template.php(リンクタグ)
user_trailingslashit
 | 
パーマリンク末尾のスラッシュを調整する
 | 
permalink_ancher
 | 
id や title 付きのアンカータグを出力。ループ内で利用
 | 
the_permalink
 | 
記事のパーマリンクを表示。ループ内で利用
 | 
get_permalink
 | 
記事のパーマリンクを取得。ループの外で利用
 | 
get_post_permalink
 | 
カスタム投稿タイプのパーマリンクを取得
 | 
post_permalink
 | 
記事ページのパーマリンクを取得
 | 
get_page_link
 | 
特定の固定ページのパーマリンクを取得
 | 
get_attachment_link
 | 
PHP内で使うデータとして添付ファイルのマーマリンクを取得
 | 
edit_comment_link
 | 
コメント編集のリンクを表示。ログイン時に限る
 | 
edit_post_link
 | 
投稿編集のリンクを表示。ログイン時に限る
 | 
get_edit_post_link
 | 
投稿編集リンクの RUL を取得
 | 
get_delete_post_link
 | 
投稿をゴミ箱に入れる URL を取得
 | 
edit_tag_link
 | 
タグを編集するリンクを表示。ループ内で利用
 | 
get_admin_url
 | 
管理画面の URL を取得
 | 
get_home_url
 | 
指定のプロトコルを付加した home.php の URL を取得
 | 
get_site_url
 | 
サイトの URL を取得
 | 
home_url
 | 
home.php の URL を取得
 | 
site_url
 | 
コアファイルが置かれているパスを取得
 | 
get_search_link
 | 
検索ページの URL を取得
 | 
get_search_query
 | 
サイト内検索を行った時のクエリを取得
 | 
the_search_query
 | 
サイト内検索を行った時のクエリを表示
 | 
the_feed_link
 | 
フィードの URL を取得
 | 
(使う予定がないので省略)
条件分岐タグ
条件分岐を行いたいときに利用できるタグ。
is_front_page
 | 
フロントページかどうか
 | 
is_home
 | 
固定されたトップページかどうか
 | 
is_admin
 | 
管理画面かどうか
 | 
is_admin_bar_showing
 | 
管理バーが表示されているかどうか
 | 
is_single
 | 
記事ページかどうか
 | 
| [slug]')
 | 
指定の記事ID あるいは記事スラッグのページかどうか
 | 
is_sticky
 | 
先頭固定記事かどうか
 | 
| [slug]')
 | 
指定の記事ID あるいは記事スラッグの先頭固定記事かどうか
 | 
is_page
 | 
固定ページかどうか
 | 
| [slug]')
 | 
指定の固定ページID あるいは固定ページスラッグのページかどうか
 | 
is_page('template')
 | 
指定のテンプレートファイルかどうか
 | 
| [slug]')	
 | 
指定のID あるいはスラッグのカテゴリページかどうか
 | 
is_tag()
 | 
タグページかどうか
 | 
is_tag('hoge')
 | 
hogeタグを含むページかどうか
 | 
is_archive
 | 
アーカイブページかどうか
 | 
is_tax
 | 
カスタム分類ページかどうか
 | 
is_tax('hoge')
 | 
hoge というカスタム分類のページかどうか
 | 
has_term('hoge')
 | 
hogeタームを持つかどうか
 | 
is_author
 | 
著者ページかどうか
 | 
| [name])
 | 
指定のID あるいは名前の著者ページかどうか
 | 
is_date
 | 
日付アーカイブページかどうか
 | 
is_year
 | 
年別のアーカイブページかどうか
 | 
is_month
 | 
月別のアーカイブページかどうか
 | 
is_time
 | 
時刻別のアーカイブページかどうか
 | 
is_new_day
 | 
投稿の日付が新しいかどうか
 | 
is_search
 | 
検索結果ページかどうか
 | 
is_404
 | 
エラーページかどうか
 | 
is_atttachment
 | 
添付ファイルページかどうか
 | 
is_singler
 | 
is_single, is_page, is_attachment のいづれかかどうか
 | 
has_excerpt
 | 
抜粋があるかどうか
 | 
has_excerpt('[id]')
 | 
指定の投稿ID の抜粋があるか
 | 
has_nav_menu
 | 
登録済みナビゲーションメニューがあるかどうか
 | 
in_the_roop
 | 
ループ内かどうか
 | 
is_dynamic_sidebar
 | 
テーマがダイナミックサイドバーに対応しているかどうか
 | 
is_multisite
 | 
マルチサイト機能を利用しているかどうか
 | 
is_super_admin
 | 
ユーザが root かどうか
 | 
is_user_logged_in
 | 
ユーザがログイン中かどうか
 | 
is_child_theme
 | 
子テーマが利用されているかどうか
 | 
has_post_thumbnail
 | 
投稿にアイキャッチ画像が登録されているかチェック
 |