0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[a-blog cms]エントリーサマリーのカテゴリー順を任意に設定する

Last updated at Posted at 2018-11-07

追記:
表題の動作は、カテゴリーリストモジュールとエントリーサマリーモジュールを組み合わせなくても、カテゴリーエントリーサマリーモジュールを使えば可能だった。
以下のやり方は、モジュールID側で表示するカテゴリーを予め絞り込んでおく場合(エントリーサマリーで複数カテゴリーを指定する)に使えるかもしれない。


エントリーサマリーは、カテゴリーとエントリーの一覧を出す際、汎用性が高くて使い勝手のいいビルトインモジュールであるものの、カテゴリーを固定せず、縦断して複数のカテゴリーとエントリーを表示させる場合、カテゴリーの表示順を設定することはできないらしい。
(エントリーの表示順は、モジュールの設定で決めることができる)

そこで、カテゴリーの指定をカテゴリーリストモジュールに任せて、それをctx(コンテキスト)でエントリーサマリーモジュールに渡して表示するようにしてみた。

カテゴリーリストの中にエントリーサマリーを入れることになるが、その場合、内側のモジュールをエスケープする必要がある
typoしやすい面倒な作業だけど、エスケープメーカーを使うと、一発でエスケープした状態に書き換えてくれて便利。

<!-- BEGIN_MODULE Category_List id="sortedList" -->
<div>
@include("/admin/module/setting.html")
<!-- BEGIN category:loop -->
<!-- BEGIN category:veil -->

<!-- BEGIN_MODULE\ Entry_Summary ctx="cid/{cid}" id="summary" -->
<div>
	<!-- BEGIN\ unit:loop -->
	<!-- BEGIN\ entry:loop -->
**エントリーサマリーでなんかする処理を書く***
	<!-- END\ entry:loop -->
	<!-- END\ unit:loop -->
</div>
<!-- END_MODULE\ Entry_Summary -->

<!-- END category:veil -->
<!-- END category:loop -->
</div>
<!-- END_MODULE Category_List -->

カテゴリーリストのモジュールIDを作成して(上記の場合sortedList)、ソート順を設定すれば、任意のカテゴリーのソートができる。
カテゴリーを指定しているのが、

<!-- BEGIN_MODULE\ Entry_Summary ctx="cid/{cid}" -->

この部分で、{cid}は、外側のカテゴリーリストの変数なので、エスケープしていない。

エントリーサマリーのモジュールIDを設定して、表示するカテゴリーを更に絞ることもできる。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?