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
|
記事ページかどうか
|
is_single('[id] | [slug]')
|
指定の記事ID あるいは記事スラッグのページかどうか
|
is_sticky
|
先頭固定記事かどうか
|
is_sticky('[id] | [slug]')
|
指定の記事ID あるいは記事スラッグの先頭固定記事かどうか
|
is_page
|
固定ページかどうか
|
is_page('[id] | [slug]')
|
指定の固定ページID あるいは固定ページスラッグのページかどうか
|
is_page('template')
|
指定のテンプレートファイルかどうか
|
is_cateogry('[id] | [slug]')
|
指定のID あるいはスラッグのカテゴリページかどうか
|
is_tag()
|
タグページかどうか
|
is_tag('hoge')
|
hogeタグを含むページかどうか
|
is_archive
|
アーカイブページかどうか
|
is_tax
|
カスタム分類ページかどうか
|
is_tax('hoge')
|
hoge というカスタム分類のページかどうか
|
has_term('hoge')
|
hogeタームを持つかどうか
|
is_author
|
著者ページかどうか
|
is_author([id] | [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
|
投稿にアイキャッチ画像が登録されているかチェック
|
既存テーマの変更
テーマがアップデートされた時に自分で修正した箇所がクリアされてしまうため、既存のテーマを修正する場合は「子テーマ」の利用が推奨されている。