php web技術 wordpress

CPT UIでカスタム投稿と記事一覧とカテゴリごとの一覧を作る

https://ja.wordpress.org/plugins/custom-post-type-ui/
問答無用でカスタムポストタイプUIをインストールします。

適当に名付ける。ここでは「news」としました。

適当に名付ける。ここでは「news」としました。


アーカイブの選択をTrueに。お好きなように。

アーカイブの選択をTrueに。お好きなように。

 

階層をTrueにする。

階層をTrueにする。

 

 

WordPressは以下の順番でファイルを探しに行きます。
1. archive-{post_type}.php (ここではarchive-news.phpになります)
2. archive.php
3. index.php

ページャをつける関数は以下になります。

全体でこんな感じになります。
シングルページはsingle-news.phpになります。

 

カスタムポストタイプのカテゴリごとにアーカイブを表示する

CPT UIでタクソノミーを追加します。

CPT UIでタクソノミーを追加します。

 

 

追加したらCPT UIの「登録済み」を見ると、アーカイブのファイルの例に参考が載っていますので、それに従ってファイルを作成します。taxonomy-important.phpを作りました。

追加したらCPT UIの「登録済み」を見ると、アーカイブのファイルの例に参考が載っていますので、それに従ってファイルを作成します。taxonomy-important.phpを作りました。

 

 

 

利用するタクソノミー

利用するタクソノミー

 

newsカスタムポストタイプの一番下にある「利用するタクソノミー」にcheckを入れます。忘れがちです。

 

 

Wordpressの左メニューから「お知らせ」のカスタムポストタイプを選択、更に「重要事項」という項目があるので、カテゴリを作ります。

WordPressの左メニューから「お知らせ」のカスタムポストタイプを選択、更に「重要事項」という項目があるので、カテゴリを作ります。

 

 

適当に投稿しましょう

適当に投稿しましょう

「階層をtrue」にすることでボックスが現れます。カテゴリーを選んで投稿しましょう。

http://example/タクソノミー/スラッグ/
でアーカイブを作成することが出来ます。
つまり
http://example/important/heavy/
で超重要なニュースのみのカテゴリーアーカイブを作成することができるのです。

おまけ

urlに応じてタイトルが変更するように分岐条件をつけました。本題とはズレてますけど。

サイドバーには以下のようにして、各カテゴリのリンクを作成しました。

これで自動的にカテゴリーが生成されます。

 

補足

カテゴリアーカイブが何故か逆順に表示されてしまう!!!という症状の方は「Simple Page Ordering」というプラグインをインストールしていませんか?その場合、プラグインの設定から「すべてを選択」を選んでみましょう。治ります!!!

-php, web技術, wordpress