• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

「テンプレートタグ/body class」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(翻訳、初期値一覧表を作成。用例が未翻訳)
(残りの翻訳 ページ種類別初期値一覧: ちょっと整理、WP日本語版表記、リンク追加)
1行目: 1行目:
 
{{Stub}}
 
{{Stub}}
 
== 説明 ==
 
== 説明 ==
[[Version 2.8|WordPress 2.8]] から、テーマの作者がより効果的<!-- 効率的? -->に CSS で装飾できるようにする <code>body</code> 要素用の新テンプレートタグ '''body_class''' が加わりました。この関数は、HTML の body 要素(通常 header.php にある)に異なる class 属性を付与し、さらに任意の class を追加することもできます。
+
[[Version 2.8|WordPress 2.8]] から、テーマの作者がより効果的<!-- 効率的? -->に CSS で装飾できるようにする <code>body</code> 要素用の新テンプレートタグ <code>'''body_class'''</code> が加わりました。この関数は、HTML の <code>body</code> 要素(通常 <code>header.php</code> にある)に異なる <code>class</code> 属性を付与し、さらに任意の class を追加することもできます。
  
 
== 使い方 ==
 
== 使い方 ==
7行目: 7行目:
 
  <?php body_class( [[#Parameters|$class]] ); ?>
 
  <?php body_class( [[#Parameters|$class]] ); ?>
  
body_class は、class 属性として次の値を一つ以上表示します。
+
<code>body_class</code> は、<code>class</code> 属性として次の値を一つ以上表示します。
  
 
* rtl
 
* rtl
50行目: 50行目:
 
|+  
 
|+  
 
! colspan="2" | ページ種類(条件) !! class !! 備考
 
! colspan="2" | ページ種類(条件) !! class !! 備考
 
 
|-
 
|-
! [[Settings Reading SubPanel|表示設定]] > Front page displays - Your latest posts の場合 !! メインブログページ<br />([[Conditional Tags#is_front_page|is_front_page]], [[Conditional Tags#The Main Page|is_home]])
+
! [[Settings Reading SubPanel|表示設定]] > フロントページの表示<!-- Front page displays --> が「最新の投稿」<!-- Your latest posts -->の場合 !! メインブログページ<br />([[Conditional Tags#The Front Page|is_front_page]], [[Conditional Tags#The Main Page|is_home]])
| '''home blog''' [ paged paged-''n'' ] ||  
+
| '''home blog''' [ paged paged-''n'' ] || [] 内は2ページ目以降のみ、''n'' はページ番号
 
|-
 
|-
! rowspan="2" | [[Settings Reading SubPanel|表示設定]] > Front page displays - A static page の場合
+
! rowspan="2" | [[Settings Reading SubPanel|表示設定]] > フロントページの表示<!-- Front page displays --> が「固定ページ」<!-- A static page -->の場合
! 「Front page」として選択したページ ([[Conditional Tags#is_front_page|is_front_page]])
+
! 「フロントページ」<!-- Front page -->として選択したページ ([[Conditional Tags#The Front Page|is_front_page]])
 
| '''home''' page page-id-''ID'' [*] || * ''is_page'' も参照
 
| '''home''' page page-id-''ID'' [*] || * ''is_page'' も参照
 
|-
 
|-
! 「Posts page」として選択したページ ([[Conditional Tags#The Main Page|is_home]])
+
! 「投稿ページ」<!-- Posts page -->として選択したページ ([[Conditional Tags#The Main Page|is_home]])
 
| '''blog''' [ paged paged-''n'' ] ||  
 
| '''blog''' [ paged paged-''n'' ] ||  
 
<!--  
 
<!--  
74行目: 73行目:
 
-->
 
-->
 
|-
 
|-
! rowspan="4" | is_archive !! is_author
+
! rowspan="4" | アーカイブページ<br />(is_archive)
| archive '''author author-''user_nicename'''''<!-- 'author-' . sanitize_html_class($author->user_nicename , $author->ID) --> [ paged paged-''n'' author-paged-''n'' ] ||  
+
! <!-- is_archive -->著者 ([[Conditional Tags#An Author Page|is_author]])
 +
| archive '''author author-''user_nicename'''''<!-- 'author-' . sanitize_html_class($author->user_nicename , $author->ID) --> [ paged paged-''n'' '''author-paged-''n''''' ] ||  
 
|-
 
|-
! <!-- is_archive -->is_category
+
! <!-- is_archive -->カテゴリー ([[Conditional Tags#A Category Page|is_category]])
| archive '''category category-''slug''''' [ paged paged-''n'' category-paged-''n'' ] ||  
+
| archive '''category category-''slug''''' [ paged paged-''n'' '''category-paged-''n''''' ] ||  
 
|-
 
|-
! <!-- is_archive -->is_tag
+
! <!-- is_archive -->タグ ([[Conditional Tags#A Tag Page|is_tag]])
| archive '''tag tag-''slug''''' [ paged paged-''n'' tag-paged-''n'' ] ||  
+
| archive '''tag tag-''slug''''' [ paged paged-''n'' '''tag-paged-''n''''' ] ||  
 
|-
 
|-
! <!-- is_archive -->is_date
+
! <!-- is_archive -->日付 ([[Conditional Tags#A Date Page|is_date]])
| archive '''date''' [ paged paged-''n'' date-paged-''n'' ] ||  
+
| archive '''date''' [ paged paged-''n'' '''date-paged-''n''''' ] ||  
 
|-
 
|-
! rowspan="2" | is_search !! 検索結果あり
+
! rowspan="2" | 検索結果 ([[Conditional Tags#A Search Result Page|is_search]])
 +
! <!-- is_search -->検索結果あり
 
| search '''search-results''' [ paged paged-''n'' search-paged-''n'' ] ||
 
| search '''search-results''' [ paged paged-''n'' search-paged-''n'' ] ||
 
|-
 
|-
! <!-- is_search --> 検索結果なし
+
! <!-- is_search -->検索結果なし
 
| search '''search-no-results''' [ paged paged-''n'' search-paged-''n'' ]  ||  
 
| search '''search-no-results''' [ paged paged-''n'' search-paged-''n'' ]  ||  
 
|-
 
|-
! is_404 !!
+
! colspan="2" | 404エラーページ ([[Conditional Tags#A 404 Not Found Page|is_404]])
 
| error404 ||  
 
| error404 ||  
 
|-
 
|-
! is_single !!
+
! colspan="2" | 単体記事ページ ([[Conditional Tags#A Single Post Page|is_single]])
 
| single postid-''ID'' [ paged paged-''n'' single-paged-''n''] ||  
 
| single postid-''ID'' [ paged paged-''n'' single-paged-''n''] ||  
 
|-
 
|-
! is_attachment !!
+
! colspan="2" | 添付ファイルページ ([[Conditional Tags#An Attachment|is_attachment]])
 
| attachment single postid-''ID'' attachmentid-''postID'' attachment-''mime-type''<!-- 'attachment-' . str_replace($mime_prefix, '', $mime_type) --> ||  
 
| attachment single postid-''ID'' attachmentid-''postID'' attachment-''mime-type''<!-- 'attachment-' . str_replace($mime_prefix, '', $mime_type) --> ||  
 
|-
 
|-
! rowspan="3" | is_page !! -
+
! rowspan="3" | [[Pages|固定ページ]] ([[Conditional Tags#A PAGE Page|is_page]])
 +
! <!-- is_page -->-
 
| page page-id-''ID'' [ page-template page-template-''template_file_name''<!-- 'page-template-' . str_replace( '.php', '-php', get_post_meta( $pageID, '_wp_page_template', true ) ) --> ] [ paged paged-''n'' page-paged-''n'' ] ||  
 
| page page-id-''ID'' [ page-template page-template-''template_file_name''<!-- 'page-template-' . str_replace( '.php', '-php', get_post_meta( $pageID, '_wp_page_template', true ) ) --> ] [ paged paged-''n'' page-paged-''n'' ] ||  
 
|-
 
|-
110行目: 112行目:
 
| page page-id-''ID'' '''page-child parent-pageid-''parent-ID''''' [ page-template page-template-''template_file_name'' ] [ paged  paged-''n'' page-paged-''n'' ] ||  
 
| page page-id-''ID'' '''page-child parent-pageid-''parent-ID''''' [ page-template page-template-''template_file_name'' ] [ paged  paged-''n'' page-paged-''n'' ] ||  
 
|-
 
|-
! rowspan="5" | (条件によってさらに追加される class)
+
! rowspan="4" | (条件によってさらに追加される class)
 
! is_user_logged_in
 
! is_user_logged_in
 
| logged-in || ログイン中
 
| logged-in || ログイン中
 
|-
 
|-
! is_paged
+
! [[Conditional Tags#A Paged Page|is_paged]]
 
| paged || 改ページ
 
| paged || 改ページ
|-
 
! paged < 2<!-- !$page || $page < 2 -->
 
| paged ||
 
 
|-
 
|-
 
! paged > 1<!-- $page && $page > 1 -->
 
! paged > 1<!-- $page && $page > 1 -->
139行目: 138行目:
  
 
=== 実装 ===<!-- Implementation -->
 
=== 実装 ===<!-- Implementation -->
The following example shows how to implement the body_class template tag into a theme.
+
<code>body_class</code> のテーマへの組み込み方の例を示します。
  
 
<pre>
 
<pre>
145行目: 144行目:
 
</pre>
 
</pre>
  
The actual HTML output might resemble something like this (the 'About' page from a default WordPress installation):
+
実際の HTML 出力は次のようになります(WordPress 新規インストールで作られる 'About' ページの例)。<!-- 日本語版ではどうなる? -->
  
<pre>
+
<pre class="example">
 
<body class="page page-id-2 page-template page-template-default logged-in">
 
<body class="page page-id-2 page-template page-template-default logged-in">
 
</pre>
 
</pre>

2010年1月8日 (金) 00:42時点における版

このページ「テンプレートタグ/body class」はまだ書きかけで、情報が不足しています。続きを書いて WordPress を手助けしましょう.


説明

WordPress 2.8 から、テーマの作者がより効果的に CSS で装飾できるようにする body 要素用の新テンプレートタグ body_class が加わりました。この関数は、HTML の body 要素(通常 header.php にある)に異なる class 属性を付与し、さらに任意の class を追加することもできます。

使い方

<?php body_class( $class ); ?>

body_class は、class 属性として次の値を一つ以上表示します。

  • rtl
  • home
  • blog
  • archive
  • date
  • search
  • paged
  • attachment
  • error404
  • single postid-(id)
  • attachmentid-(id)
  • attachment-(mime-type)
  • author
  • author-(user_nicename)
  • category
  • category-(slug)
  • tag
  • tag-(slug)
  • page-parent
  • page-child parent-pageid-(id)
  • page-template page-template-(template file name)
  • search-results
  • search-no-results
  • logged-in
  • paged-(page number)
  • single-paged-(page number)
  • page-paged-(page number)
  • category-paged-(page number)
  • tag-paged-(page number)
  • date-paged-(page number)
  • author-paged-(page number)
  • search-paged-(page number)

ページ種類別初期値一覧

ページ種類(条件) class 備考
表示設定 > フロントページの表示 が「最新の投稿」の場合 メインブログページ
(is_front_page, is_home)
home blog [ paged paged-n ] [] 内は2ページ目以降のみ、n はページ番号
表示設定 > フロントページの表示 が「固定ページ」の場合 「フロントページ」として選択したページ (is_front_page) home page page-id-ID [*] * is_page も参照
「投稿ページ」として選択したページ (is_home) blog [ paged paged-n ]
アーカイブページ
(is_archive)
著者 (is_author) archive author author-user_nicename [ paged paged-n author-paged-n ]
カテゴリー (is_category) archive category category-slug [ paged paged-n category-paged-n ]
タグ (is_tag) archive tag tag-slug [ paged paged-n tag-paged-n ]
日付 (is_date) archive date [ paged paged-n date-paged-n ]
検索結果 (is_search) 検索結果あり search search-results [ paged paged-n search-paged-n ]
検索結果なし search search-no-results [ paged paged-n search-paged-n ]
404エラーページ (is_404) error404
単体記事ページ (is_single) single postid-ID [ paged paged-n single-paged-n]
添付ファイルページ (is_attachment) attachment single postid-ID attachmentid-postID attachment-mime-type
固定ページ (is_page) - page page-id-ID [ page-template page-template-template_file_name ] [ paged paged-n page-paged-n ]
親ページ page page-id-ID page-parent [ page-template page-template-template_file_name ] [ paged paged-n page-paged-n ]
子ページ page page-id-ID page-child parent-pageid-parent-ID [ page-template page-template-template_file_name ] [ paged paged-n page-paged-n ]
(条件によってさらに追加される class) is_user_logged_in logged-in ログイン中
is_paged paged 改ページ
paged > 1 paged-n page-paged-n 2ページ目以降
text_direction: rtl rtl 右→左向きに書く言語

パラメータ

class
文字列 または 配列)(オプション) 初期値のほかに追加したい class 名。複数指定するときは(半角)スペースで区切る。初期値は null。

用例

実装

body_class のテーマへの組み込み方の例を示します。

<body <?php body_class(); ?>>

実際の HTML 出力は次のようになります(WordPress 新規インストールで作られる 'About' ページの例)。

<body class="page page-id-2 page-template page-template-default logged-in">

デフォルトテーマにおける使用例

wp-content/themes/default/header.php を参照。

ソースコード

body_class()wp-includes/post-template.php にあります。

変更履歴

  • 2.8 : 新規テンプレートタグ

最新英語版: WordPress Codex » Template Tags/body class最新版との差分

関連

投稿タグ: body_class(), next_image_link(), next_post_link(), next_posts_link(), post_class(), post_password_required(), posts_nav_link(), previous_image_link(), previous_post_link(), previous_posts_link(), single_post_title(), sticky_class(), the_category(), the_category_rss(), the_content(), the_content_rss(), the_excerpt(), the_excerpt_rss(), the_ID(), the_meta(), the_shortlink(), the_tags(), the_title(), the_title_attribute(), the_title_rss(), wp_link_pages(),


テンプレートタグへの PHP 関数型パラメータの渡し方関数リファレンステンプレートタグ目次もご覧ください。