公式プラグイン
ドキュメント
- 日本語:https://info.cseas.kyoto-u.ac.jp/links-ja/plugin-ja/wordpress-dev-info/list-view-posts
- 英語:https://info.cseas.kyoto-u.ac.jp/en/links-en/plugin-en/wordpress-dev-info-en/list-view-posts
となります。ドキュメントにかけることは全部書いたので、あとは適当に触ってもらったら使えるかなと思います。
TiPS
出力されたHTMLを表示したら、見栄えがわるんだけど?
出力コードは、CSSでデザイン・レイアウト変更できるようにしています。
見栄えに関するCSSコードは一切入っていません。筆者はデザイン力0なので、そのあたりのフォローはしません。そのCSS部分は、テンプレート側のCSSに追加するなどして調整してください。
class の接頭文字を変更してみよう
まぁここはちょっと譲れないところがありますよね。
デフォルトは、 list-view-posts_◯◯ って class が各項目に付きますが、ここの list-view-posts を変更できます。
デフォルトは、 list-view-posts_◯◯ って class が各項目に付きますが、ここの list-view-posts を変更できます。
- [list-view-posts html_tag="hogehoge"]
投稿全部とカスタム投稿(news と faq)を一覧に載せたいんだけど?)
まぁよくあるパターンかと思います。
- [list-view-posts post_type="post,news,faq"]
です。基本は降順にソートされて作成日時順に並びます。
予定など未来の記事を載せたいんだけど?
メンテナンス予定などは一番トップに出すために、公開日時をメンテナンス日にして予約投稿を解除するなんて設定をして公開してませんか。そういった場合にでも
- [list-view-posts post_status="publish,future"]
で公開済みに加えて、予約済みの記事も一覧表示の対象にします。
これでメンテナンス日の一覧表示もばっちりです。
これでメンテナンス日の一覧表示もばっちりです。
カテゴリー表示したいんだけど?
上図のように、記事のカテゴリー(お知らせ とか)ごとに色を変えるなどして見せるのはよくやってるサイトありますよね。大丈夫できます。
- [list-view-posts enable_view_category="true"]
別途タクソノミーを追加設定しているけど、それもカテゴリー表示できるの?
はいできます。
種類(追加のタクソノミー):type
をカテゴリー表示に加えたい場合には、既存のカテゴリー(投稿):categoryを加えて次のように記述します。
- [list-view-posts enable_view_category="true" category_taxonomy="category,type"]
カテゴリー自体を複数設定(タクソノミー設定)している場合には、それぞれのカテゴリーで指定した最初のカテゴリーを表示します。上図の「お知らせ」のような分類分けがタクソノミー設定しただけ増える可能性があるってことですね(まぁ記事にチェックした場合のみですけど)
どのカスタム投稿の記事か知りたいんだけど?
わかります。複数のカスタム投稿を纏めて一覧にした場合にはややこしいですよね。
できます。
- [list-view-posts enable_view_post_type="true"]
です。これでカスタム投稿のみ上図「お知らせ」の分類のところに、「カスタム投稿名」が追加されます。
パスワード保護された記事が一覧に出てこないんだけど?
デフォルトでは非表示になっています。
表示したい場合には、次のようにします。
- [list-view-posts enable_password_protected_post="true"]
ページ送りってできるの?
ページ送りのHTML出力自体はサポートしていませんが、30〜50、50〜70など特定の項目の一覧を出すことができます。
- [list-view-posts max_items=50 page=1] = 1〜50
- [list-view-posts max_items=50 page=2] = 51〜100
のように、 ($page - 1) * $max_items + 1 〜 $page * $max_items のデータがとれます。これをテンプレートのループで使えば、いけるんじゃない?って感じです。
出力されるHTMLコードを変更したいんだけど?
デフォルトでは、4つのテンプレートが用意されています。
- [list-view-posts html_tag="li"] = <li><span> 系
- [list-view-posts html_tag="p"] = <p><span> 系
- [list-view-posts html_tag="dd"] = <dd><span> 系
- [list-view-posts html_tag="pli"] = <li><p><span></span></p> 系
そのときにはフックが使えます。
詳しくはドキュメントの「フックの使い方」に事例とサンプルコードを載せたので参考にしてみてください。
2017年8月30日 @kimipooh