ABCウェブエンジニアblog

Webデザイナー/エンジニア/講師のホームページ・ウェブサイト制作の備忘録

#2 Wordpress独自テーマ作成によく使う関数や記述。「テンプレートタグ一覧」

ワードプレスのテーマ作成に良く使う関数・頻出テンプレートタグ一覧

Wordpressのテーマファイルの各テンプレート内で使う独自の関数をテンプレートタグと呼びます。

例えば記事ループ内で本文を表示させる「the_content()」などもテンプレートタグ。

前回記事で「Wordpressの独自テーマ作成に良く使う関数や記述」ということで、テーマ作成の際のstyle.cssへの記述やfunctions.phpへ書く関数なども取り上げたので、今回は良く使うテンプレートタグのみピックアップして取り上げたいと思います。

▼前回記事は独自テーマ作成の流れに沿った解説多めの内容となっています。 

webabc.hatenablog.jp

  

オリジナルのテーマ作成をしている方など、是非ご参考頂ければ幸いです。

では、やっていきましょう!

 

頻出テンプレートタグ一覧

テーマ作成やカスタマイズに良く使うテンプレートタグの一覧をざっと並べてみました。

サイトの情報など出力する系のタグ

wp_head();  //headタグ内で各プラグイン等の処理
wp_footer();  //body終了タグ直前で各プラグイン等の処理
wp_title(); //ページタイトル出力。ver4.4以降で非推奨候補だった経緯により、add_theme_support( 'title-tag' );がおすすめか。
bloginfo( 'name' ); //サイトのタイトルを出力。
bloginfo( 'description' ); //サイトのキャッチフレーズを出力
get_bloginfo(); //サイトの情報を取得。引数詳細はCodex参照。出力には要echoとエスケープ。例)echo esc_html(get_bloginfo('description')); home_url(); //サイトのURLを取得。出力にはechoが必要。エスケープ処理も忘れずに。例)echo esc_url(home_url()); get_stylesheet_directory_uri(); //スタイルシート、または使用中子テーマのディレクトリURLを取得。出力にはechoが必要。 get_template_directory_uri(); //親テーマのディレクトリURLを取得。出力にはechoが必要。 body_class(); //bodyタグへ個別のクラスを出力。「<body <?php body_class(); ?> >」として使う。 wp_nav_menu( オプション用の配列 ); //カスタムメニューを出力。引数詳細はCodex参照 dynamic_sidebar( 'ウィジェット名かID' ); //動的なウィジェットを出力。 the_widget( 'ウィジェットのPHPクラス名' ); //特定のウィジェットを出力。引数詳細はCodex参照
next_post_link
(); //個別投稿のループ内で次の記事へのリンクを出力。引数でリンクの表記等など指定可。詳細はCodex参照 previous_post_link(); //個別投稿のループ内で前の記事へのリンクを出力。引数でリンクの表記等を指定可。詳細はCodex参照
next_posts_link(); //次のページへのリンクを出力。引数でリンクの表記等など指定可。詳細はCodex参照
previous_posts_link(); //前のページへのリンクを出力。引数でリンクの表記等を指定可。詳細はCodex参照

Wordpressにおけるエスケープ処理に関しては 以下サイトが詳しいです。

WordPressでエスケープ処理が必要な関数と処理方法 | POCO

 



テンプレートパーツを読み込むインクルードタグ

get_header();  //header.phpを出力
get_footer();  //footer.phpを出力
get_sidebar();  //sidebar.phpを出力。引数指定するとsidebar-$name.phpを出力。
get_search_form(); //searchform.phpを出力。ファイルが無ければ初期検索フォームを表示。
get_template_part( '任意のテンプレートファイル名' ); //任意のテンプレートファイル.phpを出力
comments_template(); //comments.phpを出力。ファイルが無ければ初期コメントパーツを表示。

 

記事の情報や内容を出力するタグ

the_post() //記事のカウントや表示する記事を以下の関数で出力出来るようセット。
the_title() //タイトルを出力
the_content //本文を出力
the_date() //投稿日を出力
the_modified_date() //記事の更新日を出力
the_time() //投稿時日時を出力 the_permalink() //記事のURLを出力 the_post_thumbnail() //記事のアイキャッチ画像を出力 the_excerpt() //記事の抜粋文を出力 the_category() //記事のカテゴリーをリンク付きで出力 the_tags(); //記事のタグを出力 the_author() //記事の投稿者を出力
the_author_posts_link() //記事の投稿者とリンクを出力 the_terms() //カスタム分類を出力 the_post_navigation() //個別記事での前後記事リンクを出力。引数詳細は英語ドキュメント参照 the_posts_pagination() //一覧でのページネーションを出力。引数詳細はCodex参照 single_post_title() //ループ外で個別記事のタイトルを出力

 

条件分岐タグ

have_posts() //表示する記事の有無を判定
has_post_thumbnail() //アイキャッチ画像の有無を判定 is_home() //メインページかどうかを判定 is_front_page() //フロントページかどうかを判定 is_single() //投稿ページかどうかを判定 is_page() //固定ページかどうかを判定 is_category() //カテゴリーページかどうか判定 is_tag() //タグページかどうかを判定 is_archive() //アーカイブページかどうかを判定 is_paged() //2ページ目以降かどうかを判定 is_search() //検索結果ページかどうかを判定 is_404() //404 Not Found ページかどうかを判定 is_tag() //タクソノミーページかどうかを判定 is_attachment //特定のメディア(画像等)が表示されてるかを判定 is_singular() //is_single()、is_page() 、is_attachment() のいずれかかを判定 get_previous_post() //前記事の有無を判定 get_next_post() //次記事の有無を判定 wp_is_mobile() //携帯かどうか判定。iPadも携帯として認識される

 

まとめ

自分でまとめてみて何ですが、こういった形でよく使うテンプレートタグがまとまってるとWordpressのテーマ作成・カスタマイズが非常に捗ると思います。

カスタマイズがしやすいように工夫された既存のブランクテーマなどもあるので、一つ一つのテンプレートタグを常に記憶しておく必要などはないと思います。

「何だっけ?」と忘れた時にこうして一覧で見返せることがメリットだと思いますし、たまに眺めておくと勉強にもなると思います。

 

▼本格的にWordpressカスタマイズされる方以外にPHP入門にもこちらオススメ書籍です!

▼オリジナルテーマ作成にはHTML/CSSの知識が必須!イチから基礎が身につきます。

公式のCodexはなかなか見づらかったりするので、是非役立てて頂ければ光栄です。

最後までお読みいただきありがとうございました!

 

 

 webabc.hatenablog.jp

webabc.hatenablog.jp

webabc.hatenablog.jp

webabc.hatenablog.jp

webabc.hatenablog.jp 

 

▼公式オンラインドキュメント

テンプレートタグ - WordPress Codex 日本語版