福岡 web・ホームページ制作 Eight(エイト)

WordPressで固定ページやカスタム投稿に投稿と同じカテゴリーを設定できる方法を福岡一わかりやすく解説します。

wordpress-wp2
Category:WordPress

固定ページやカスタム投稿にカテゴリーを付与する場合、基本はタクソノミーを使用すると思います。ですが、それだと記述が増えたりプラグインを使ったりしなければならず手間がかかります。そんなあなたのためにコピペで楽に実装できるコードを紹介します。

コード

function.php

//固定ページ・トップリスト1カテゴリー付与
add_action('init','e_add_category_for_post'); 
function e_add_category_for_post(){ //カテゴリーを付与したい投稿タイプ指定
    register_taxonomy_for_object_type('category', 'page'); 
    register_taxonomy_for_object_type('category', 'custum-post'); 
} 
add_action( 'pre_get_posts', 'e_custum_category_archive' ); 
function e_custum_category_archive( $query ) { 
    if ( $query->is_category && $query->is_main_query() ) { //カテゴリーページで同時に表示する投稿タイプ
        $query->set('post_type', array('any')); //anyはリビジョンと検索不可のページ以外すべて
        //$query->set('post_type', array( 'post', 'page', 'nav_menu_item', 'custum-post')); //個別に指定する場合
    } 
}

e_add_category_for_postではカテゴリーを付与したい投稿タイプを個別に指定します。今回のコードでは固定ページとカスタム投稿を指定しています。
e_custum_category_archiveでは、カテゴリーページの時にすべての投稿タイプを含めて表示させるようにしています。
投稿タイプは配列で個別に指定することも可能です。

投稿タイプのパラメータ  | 関数リファレンス/WP Query – WordPress Codex 日本語版

コピペでカテゴリー付与できますのでぜひ使ってみてください!

Related Article

Comments

Page Top