概要
is_category 関数は、現在表示しているページがカテゴリーのアーカイブページかどうかを調べるために使用されます。この関数は、テーマやプラグインの構築時に、特定のカテゴリーに基づいて異なるコンテンツを表示したり、特定のスタイルを適用したりする際に非常に便利です。以下に、is_category 関数がよく使用されるケースを挙げます:
- 特定のカテゴリーに基づく条件付きスタイルの適用
- カテゴリーページ専用のレイアウトの作成
- サイドバーウィジェットの表示条件の制御
- SEO対策としてのメタデータの動的生成
- カテゴリーごとのカスタムクエリの実施
- 特定のカテゴリーに属する投稿のフィルタリング
- ナビゲーションメニューの表示の切り替え
- カテゴリーページに特有のスクリプトの読み込み
構文
is_category( $category )
パラメータ
- $category (optional): カテゴリーの ID、スラッグ、または名前。指定しない場合は、現在のページがカテゴリーアーカイブであるかどうかを確認します。
戻り値
- bool: 現在のページが指定したカテゴリーアーカイブである場合は
true、それ以外の場合はfalseを返します。
関連する関数
使用可能なバージョン
- WordPress バージョン 1.5 以降で使用可能
コアファイルのパス
/wp-includes/query.php
サンプルコード
サンプルコード1: カテゴリーアーカイブ用のスタイル適用
if ( is_category() ) {
echo '<link rel="stylesheet" href="category-style.css" />';
}
このコードは、カテゴリーアーカイブページでのみ特定のスタイルシートを読み込むものです。
サンプルコード2: 特定のカテゴリー用のメッセージ表示
if ( is_category( 'news' ) ) {
echo '<h1>最新ニュース</h1>';
}
このコードは、「news」カテゴリーのアーカイブページに「最新ニュース」という見出しを表示します。
サンプルコード3: カテゴリーに応じたコンテンツ表示
if ( is_category( 5 ) ) { // カテゴリーIDが5のとき
echo '<p>このカテゴリーは特別なコンテンツです。</p>';
}
このコードは、カテゴリーIDが5のページに特別なメッセージを表示します。
サンプルコード4: サイドバーウィジェットの表示条件制御
if ( is_category() ) {
dynamic_sidebar( 'category-sidebar' );
}
このコードは、カテゴリーアーカイブページでのみ、特定のサイドバーウィジェットを表示します。
サンプルコード5: SEOメタデータの追加
if ( is_category() ) {
echo '<meta name="description" content="このカテゴリーの詳細な説明">';
}
このコードは、カテゴリーアーカイブページに特有のメタ記述を追加します。
この関数のアクションでの使用可能性
| アクション名 | 使用可能性 |
|---|---|
| mu_plugin_loaded | |
| registered_post_type | |
| plugins_loaded | |
| wp_roles_init | |
| setup_theme | |
| after_setup_theme | |
| set_current_user | |
| init | |
| register_sidebar | |
| wp_loaded | |
| send_headers | |
| parse_query | |
| pre_get_posts | 〇 |
| wp | 〇 |
| template_redirect | 〇 |
| get_header | |
| wp_head | 〇 |
非推奨または削除されたバージョン
- 特定のバージョンでは非推奨や削除の情報はありません。