WordPressはアップデートで大きな変更が入ったり、非推薦になったコードが出てきたりします。あれ?あのタグ使えなくなってる??って事が多々あるので最新のWordPress(WordPress 5.0系)で私がよく使う関数・コードをまとめました。
1
コピペOKだよ!
2
タグの一覧と詳細があるよ!
2
アプデがあれば更新する!現在(WordPress 5.0系)
3
ブクマOK!
- 1. テンプレートタグ詳細
- 1.1. ヘッダー表示 get_header()
- 1.2. フッター表示 get_footer()
- 1.3. サイドバー表示 get_sidebar()
- 1.4. サイト情報表示 bloginfo() (PHP内で使うならget_bloginfo() )
- 1.5. ページタイトルを表示 wp_title()
- 1.6. 記事詳細でループ外にタイトル single_post_title()
- 1.7. サイト情報表示 the_author() (PHP内で使うならget_the_author() )
- 1.8. サイト情報表示 the_author() (PHP内で使うならget_the_author() )
- 1.9. パーマリンクのURL表示 the_author() (PHP内で使うならget_the_author() )
- 1.10. 記事のカテゴリー表示 the_permalink()
- 1.11. 記事のタグ表示 the_tags()
- 2. 条件分岐タグ
テンプレートタグ詳細
ヘッダー表示 get_header()
TOP | 検索 | ページ | カテゴリー | アーカイブ | 記事詳細 |
---|---|---|---|---|---|
○ | ○ | ○ | ○ | ○ | ○ |
現在のテーマディレクトリの header.php テンプレートファイルを読み込みます。
コピー
<?php get_header( $name ); ?>
コピー
<?php
if ( is_home() ) :
get_header('home');
elseif ( is_404() ) :
get_header('404');
else :
get_header();
endif;
?>
異なるページで異なるヘッダーを読み込みます。
ホームのヘッダーと 404 のヘッダーは、それぞれ header-home.php と header-404.php にしてください。
フッター表示 get_footer()
TOP | 検索 | ページ | カテゴリー | アーカイブ | 記事詳細 |
---|---|---|---|---|---|
○ | ○ | ○ | ○ | ○ | ○ |
現在のテーマディレクトリの footer.php テンプレートファイルを読み込みます。
コピー
<?php get_footer( $name ); ?>
コピー
<?php
if ( is_home() ) :
get_footer('home');
elseif ( is_404() ) :
get_footer('404');
else :
get_footer();
endif;
?>
異なるページで異なるフッターを読み込みます。
ホームのフッターと 404ページ のフッターは、それぞれ footer-home.php と footer-404.php にしてください。
サイドバー表示 get_sidebar()
TOP | 検索 | ページ | カテゴリー | アーカイブ | 記事詳細 |
---|---|---|---|---|---|
○ | ○ | ○ | ○ | ○ | ○ |
現在のテーマディレクトリの sidebar.php テンプレートファイルを読み込みます。
サイドバーを表示したい場所に貼り付けたらOKです。
コピー
<?php get_sidebar( $name ); ?>
コピー
<?php get_header(); ?>
<?php get_sidebar('left'); ?>
<?php get_sidebar('right'); ?>
<?php get_footer(); ?>
一つのテーマで二つのサイドバーが使えます。
この場合、右サイドバーと左サイドバーのファイル名は、それぞれ sidebar-right.php と sidebar-left.php にします。
コピー
<?php
if ( is_home() ) :
get_sidebar('home');
elseif ( is_404() ) :
get_sidebar('404');
else :
get_sidebar();
endif;
?>
ページごとに異なるサイドバーを読み込むにはif分で振り分けてください。
この場合、ホームのサイドバーと 404 のサイドバーは、それぞれ sidebar-home.php と sidebar-404.php にします。
サイト情報表示 bloginfo() (PHP内で使うならget_bloginfo() )
TOP | 検索 | ページ | カテゴリー | アーカイブ | 記事詳細 |
---|---|---|---|---|---|
○ | ○ | ○ | ○ | ○ | ○ |
サイトの情報を表示させる関数で、、プロフィールや一般設定などの、WordPress 管理画面で入力されたものを表示できます。
PHP の中でこれらの値を使う必要がある場合は、get_bloginfo() を使ってください!
コピー
<?php bloginfo('name'); ?>
コピー
<p>Character set: <?php bloginfo('charset'); ?> </p>
ログで使われている文字コードの表示 (例: utf-8)
注: Version 3.5 以降では UTF-8 がデフォルトとなっており、管理画面での設定ができなくなっています。
コピー
<p><?php bloginfo('description'); ?> </p>
ダッシュボードの「設定」>「一般設定」で入力したキャッチフレーズを表示。
出力例
ダッシュボードの「設定」>「一般設定」で入力したキャッチフレーズを表示。
<?php bloginfo('dmin_emai'); ?> …登録したメアド表示
<?php bloginfo('atom_url'); ?> …RSSのフィード(atom)表示
<?php bloginfo('comments_atom_url'); ?> …RSSのフィード(tom)表示
<?php bloginfo('comments_rss2_url'); ?> …RSSのフィード(rss)表示
<?php bloginfo('description'); ?> …ブログの概要
<?php bloginfo('language'); ?> …エンコード
<?php bloginfo('stylesheet_directory'); ?> …CSSの置き場所
<?php bloginfo('stylesheet_url'); ?> …CSS自体のURL
<?php bloginfo('template_directory'); ?> …テンプレートファイルの置き場所
<?php bloginfo('stylesheet_url'); ?> …CSS自体のURL
<?php bloginfo('url'); ?> …ブログのURL
<?php bloginfo('wpurl'); ?> …WPをインストールしたディレクトリ
<?php bloginfo('stylesheet_url'); ?> …CSS自体のURL
ページタイトルを表示 wp_title()
TOP | 検索 | ページ | カテゴリー | アーカイブ | 記事詳細 |
---|---|---|---|---|---|
× | ○ | ○ | ○ | ○ | ○ |
現在のページのタイトルを表示または取得します。
コピー
<?php wp_title(); ?>
TOPページは対応していないので値が空になっていまいます。その場合はfunction.phpに以下のコードを追加すればOKです。
コピー
add_filter( 'wp_title', 'wpdocs_hack_wp_title_for_home' );
/**
* Customize the title for the home page, if one is not set.
*
* @param string $title The original title.
* @return string The title to use.
*/
function wpdocs_hack_wp_title_for_home( $title )
{
if ( empty( $title ) && ( is_home() || is_front_page() ) ) {
$title = __( 'Home', 'textdomain' ) . ' | ' . get_bloginfo( 'description' );
}
return $title;
}
もしタイトルが空だったら $title = __( 'Home', 'textdomain' ) . ' | ' . get_bloginfo( 'description' );
の部分でHOMEとブログタイトルを表示するという指定をしています。
記事詳細でループ外にタイトル single_post_title()
TOP | 検索 | ページ | カテゴリー | アーカイブ | 記事詳細 |
---|---|---|---|---|---|
× | × | × | × | × | ○ |
個別記事ページでループ外に記事のタイトルを出力します。 このタグはループの外に投稿のタイトルを表示する場合に便利です。
コピー
<?php single_post_title(); ?>
サイト情報表示 the_author() (PHP内で使うならget_the_author() )
TOP | 検索 | ページ | カテゴリー | アーカイブ | 記事詳細 |
---|---|---|---|---|---|
○ | ○ | ○ | ○ | ○ | ○ |
※ただしループ内に限る
このテンプレートタグ the_author() は、投稿の作成者名を表示します。このタグはループ内でのみ使えます。
表示するのではなく PHP に値を返したいときは、get_the_author() を使ってください。
コピー
<?php the_author(); ?>
サイト情報表示 the_author() (PHP内で使うならget_the_author() )
TOP | 検索 | ページ | カテゴリー | アーカイブ | 記事詳細 |
---|---|---|---|---|---|
○ | ○ | ○ | ○ | ○ | ○ |
※ただしループ内に限る
現在の記事に付けられたカテゴリーを表示します。 必ずループの中で使います。
コピー
<?php the_author(); ?>
パーマリンクのURL表示 the_author() (PHP内で使うならget_the_author() )
TOP | 検索 | ページ | カテゴリー | アーカイブ | 記事詳細 |
---|---|---|---|---|---|
○ | ○ | ○ | ○ | ○ | ○ |
※ただしループ内に限る
ループ の中で処理されている投稿の パーマリンク の URL を表示します。このタグは ループ 内で使用されなければならず、一般的に各投稿のパーマリンクを表示するときに利用します。
コピー
<a href="<?php the_permalink(); ?>">permalink</a>
リンクテキストとしてあなたの好きな文字列を使用することができます。この例では “permalink” です。
記事のカテゴリー表示 the_permalink()
TOP | 検索 | ページ | カテゴリー | アーカイブ | 記事詳細 |
---|---|---|---|---|---|
○ | ○ | ○ | ○ | ○ | ○ |
※ただしループ内に限る
のテンプレートタグは、現在の記事に付けられたタグを表示します。 各タグは、そのタグのアーカイブページへリンクします。 タグが付けられていない場合は、何も表示しません。 必ずループの中で使います。
コピー
<?php the_tags(); ?>
コピー
<?php the_category(', '); ?>
コピー
<?php the_category(' > '); ?>
記事のタグ表示 the_tags()
TOP | 検索 | ページ | カテゴリー | アーカイブ | 記事詳細 |
---|---|---|---|---|---|
○ | ○ | ○ | ○ | ○ | ○ |
※ただしループ内に限る
このテンプレートタグ the_author() は、投稿の作成者名を表示します。このタグはループ内でのみ使えます。
表示するのではなく PHP に値を返したいときは、get_the_author() を使ってください。
コピー
<?php the_tags(); ?>
コピー
<?php the_tags( 'Tags: ', ', ', '<br />' ); ?>
コピー
<?php the_tags( 'Social tagging: ',' > ' ); ?>
コピー
<?php the_tags( '<ul><li>', '</li><li>', '</li></ul>' ); ?>
コピー
<?php if (the_category(', ')) the_category(); ?>
<?php if (get_the_tags()) the_tags(); ?>
条件分岐タグ
ブログページ
コピー
if ( is_front_page() && is_home() ) {
// デフォルトホームページ
} elseif ( is_front_page() ) {
// 固定ペーシを使ったホームページ
} elseif ( is_home() ) {
// ブログページ
} else {
// それ以外
}