2013年09月13日 追記・変更

WordPressテンプレートタグを活用する
WordPressテンプレートタグは、数多くあり全て覚えるのは困難。 まずはよく利用するテンプレートタグを覚えれば問題なく作業出来るはず。よく利用するWordPressテンプレートタグ(1)
<?php bloginfo(); ?> サイトの設定情報や、絶対パスを出力
使い方は、()の中に引数を入れる。シングルコーテーションで囲う。 使用時は <?php bloginfo('name'); ?> といったように使う。 引数を入れると、使用中のWordPressに関するさまざまな情報を、文字列として出力出来る。 例えば、ファイルまでのパス(URL)や管理画面で設定したブログ情報など。 オリジナルテーマカスタマイズでよく使うと思われるタグをまとめたので参考にして欲しい。ファイル内容 | ファイル名 |
---|---|
name | サイト名(「各種設定」-「一般設定」) |
url | サイトURL |
template_directory | テンプレートファイルディレクトリのURL |
stylesheet_url | スタイルシートのURL |
template_url | テンプレートのURL |
stylesheet_directory | スタイルシートディレクトリのURL |
description | タグライン(META):このウェブログの簡単な説明(「各種設定」-「一般設定」) |
admin_email | メールアドレス(「各種設定」-「一般設定」) |
charset | 文字コード |
version | WordPressのバージョン |
html_type | メディアタイプ |
wpurl | WordPressをインストールしたURL |
udf_url | RDF/RSS1.0フィードのURL |
rss_url | RSS0.92フィードのURL |
rss2_url | RSS2.0フィードのURL |
atom_url | AtomフィードのURL |
comments_rss2_url | コメントのRSS2.0フィードのURL |
pingback_url | ピンバックのURL |
よく利用するWordPressテンプレートタグ(2)
<?php wp_nav_menu(); ?> ナビゲーションを表示カスタムメニュー機能により作成されたナビゲーションを表示する。 カスタムメニューを設定していない初期状態では、作成した固定ページへのナビゲーションを出力する。
複数のカスタムメニューを使用したい場合や、細かく表示を変更したい場合は、下記ページを参考にしてもらいたい。
参考:カスタムナビゲーションメニューの追加と設定方法
よく利用するWordPressテンプレートタグ(3)
<?php if(have_posts()): while(have_posts()): the_post(); ?> <?php endwhile; endif; ?> 投稿を一覧表示するためのループ
投稿をメインページや、カテゴリー、タグ等といった記事一覧を表示させるには、 このテンプレートタグを使って、ループ処理で記事を表示させる必要がある。 例えば、以下のように記述した場合、<?php if(have_posts()): while(have_posts()): the_post();?> <h2><?php the_title(); ?></h2> <?php the_content(); ?> <?php endwhile; endif; ?>一つ一つ見ていくと、 if(have_posts()) は、1つでも投稿記事があるか判定し、true(記事有り)の場合は処理を進める。false(記事無し)なら終了。 while(have_posts()): the_post() は、ループが続いてる間(投稿記事がある間)は、中身を処理する。 こういった処理が行われている。
よく利用するWordPressテンプレートタグ(4)
下記は、基本的に記事のループ処理内で使用する
タグ | 意味 |
---|---|
<?php the_content(); ?> | 投稿内容を表示させる |
<?php the_excerpt(); ?> | 記事の抜粋110文字 |
<?php the_title(); ?> | 記事のタイトル |
<?php the_permalink(); ?> | 記事のURL |
<?php the_date(); ?> | 記事の投稿日時(投稿日が重複してる場合は最初の1記事のみ) |
<?php the_time(); ?> | 記事の投稿日時 |
<?php the_author(); ?> | 記事の投稿者名 |
<?php the_author_posts_link(); ?> | 記事の投稿者名とリンクを出力 |
<?php the_category(); ?> | 記事のカテゴリー名とリンクを出力 |
<?php the_tags(); ?> | 記事に付けたタグ |
例えば 記事内にて<!--more-->タグを入力した場合などに使う「続きを読む」というリンクだが <?php the_content('続きを読むにはこちらです'); ?> という形にて 引数という '(シングルコーテーション) で括った箇所に入力すれば良い。 <?php the_time("Y年n月j日"); ?>など。 各タグ毎、引数の記述の仕方は決まっている。ここでは長くなり過ぎるため割愛させてもらう。
よく利用するWordPressテンプレートタグ(5)
<?php the_permalink(); ?> 記事へのURLを表示
主にメインページや、カテゴリーページから記事一覧ページに移動するために使われる。 下記のように使われる。<?php if(have_posts()) : while(have_posts()) : the_post(); ?> <?php the_category(); ?>:<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a><br /> <?php the_content(); ?> <?php endwhile; else: ?> 記事がない場合に表示させる文章など。 <?php endif; ?>
よく利用するWordPressテンプレートタグ(6)
記事一覧ページで利用するページ送りタグ
<!-- ページャー --> <?php if ( $wp_query -> max_num_pages > 1 ) : ?> 前ページ:<?php next_posts_link('« PREV'); ?> 次ページ:<?php previous_posts_link('NEXT »'); ?> <?php endif; ?> <!-- /ページャー -->
記事ページで利用するページ送りタグ
<!-- ページナビゲーション --> <?php if( get_previous_post() ): ?> 前ページ:<?php previous_post_link('%link', '« %title'); ?> <?php endif; if( get_next_post() ): ?> 次ページ:<?php next_post_link('%link', '%title »'); ?> <?php endif; ?> <!-- /ページナビゲーション-->
よく利用するWordPressテンプレートタグ(7)
<?php wp_title(); ?> 各ページのタイトル名を表示
よく利用するWordPressテンプレートタグ(8)
プラグインを使用する際などに必要な記述。<?php wp_head(); ?>
</head>の直前に記述する。<?php wp_footer(); ?>
</body>の直前に記述する。よく利用するWordPressテンプレートタグ(9)
条件分岐タグ
条件分岐タグは、特定のページにだけ特定内容を表示させたい時などに使用する。()の中には指定したい条件(パラメータ)を記述できる。
条件式の中で使う事が多い。論理演算子も使用可能。
タグ | 意味 |
---|---|
have_posts() | 表示する記事があるかどうかを判定 |
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テンプレートタグ(10)
<?php wp_enqueue_script(); ?>
WordPressで外部jQueryや独自JavaScriptファイルを読み込む場合、コンフリクト(競合問題)を回避する為にwp_enqueue_script関数を使う。使用サンプル 必ずwp_head();の前に記述する。
<?php if ( is_singular() ) wp_enqueue_script( 'comment-reply' ); ?>「comment-reply」は、http://localhost/wordpress/wp-includes/js/の中にある「comment-reply.dev.js」もしくは「comment-reply.js」を読み込んでくれる。
これはコメントの返信時、「コメント入力欄」を該当コメントのすぐ下に表示するためのJavaScriptファイル。
よく利用するWordPressテンプレートタグ(11)
ファイルの読み込みで利用するテンプレートタグ。php関数のincludeと同じような仕組みを行ってくれる。
詳しくは、公式サイトのインクルードタグを参照。
タグ | 優先順位(高い→低い) | |
---|---|---|
get_header() | header.php | wp-includes/theme-compat/header.php |
get_template_part( 'loop' ) | loop.php(任意のファイル名) | 無し |
get_sidebar() | sidebar.php | wp-includes/theme-compat/sidebar.php |
get_footer() | footer.php | wp-includes/theme-compat/footer.php |
get_search_form() | searchform.php | wp-includes/general-template.php |
comments_template() | comments.php | wp-includes/theme-compat/comments.php |