WordPress

固定ページにカテゴリーを作る方法

WordPressの固定記事にカテゴリーを設定する方法

ワードプレスの記事(投稿)は、カテゴリーを設定することができます。
しかし、このカテゴリーは、WordPressのもう1つの投稿の種類である「固定ページ」には、設定できない仕様になっている。

外観→テーマエディターにある「functions.php」というファイルに、あるコードを追加すると「固定ページ」にもカテゴリーは、実装できます。

やり方はいろいろ...

プラグインを入れる方法などがありますが、できるだけプラグインを入れずにやる方が負担も少なくすむので、筆者は、「functions.php」にphpコードを直接書く方法を用いました。

12行ですむくらい簡単なコードなので、今回は、この「functions.phpを修正する方法」を解説していきます。

functions.phpを修正する方法

まず、「外観」→「テーマエディター」をクリック。

つぎに、「編集するテーマを選択:」で、テーマを選びます。
※「子テーマ」を使用している場合は、必ず「子テーマ」を選択します。そうしないとテーマがアップデートされた時に設定が消える(リセットされる)からです。

子テーマを使用していない場合は、現在使用しているテーマを選択します。

筆者の場合は「WING-AFFINGER5 Child」を選択しました。
テーマを選択したら、右の「選択」をクリック。

そして、「テーマのための関数(functions.php)」をクリックして、テーマの編集画面に入ります。

 

すると、phpのソースコードが記載されている画面が表示されているので、一番下の行に下記のコードを追記します。

/*▼固定記事にカテゴリーを設定*/
add_action( 'init', 'my_add_pages_categories' ) ; 
function my_add_pages_categories()
{
    register_taxonomy_for_object_type( 'category', 'page' ) ;
}
add_action( 'pre_get_posts', 'my_set_page_categories' ) ;
function my_set_page_categories( $query )
{
    if ( $query->is_category== true && $query->is_main_query()){
        $query->set( 'post_type', array( 'post', 'page', 'nav_menu_item' )) ;
    }
}
/*▲固定記事にカテゴリーを設定*/

上記のコードをコピーしたら、下図のように、テーマのための関数(functions.php)」に貼り付けます。

ファイルを更新」をクリックして保存します。
以上で、作業は完了です。

固定ページにもカテゴリーができた

テーマのための関数(functions.php)」に追記すると、「投稿」と同じく、カテゴリーが、「固定ページ」にもできているのが確認できると思います。

追記前


「固定ページ」にカテゴリーはありませんが、追記すると・・・

追記後


無事に、「固定ページ」にカテゴリーが設置されました。これで、「投稿」と共通のカテゴリーが選択できるようになります。

お疲れ様でした。

-WordPress

Copyright© 暇ブログ , 2020 All Rights Reserved.