rstblog で最近のエントリーを表示する
heavenshell's note -rstblog で最近のエントリーを表示する の転載。
ブログなんかはサイドバーに最近のエントリーみたいな形で表示する事が多い。
Octpress なんかも表示している。
rstblog でどうやって表示するか分からなかったのでちょっとだけソースを読んでみた。
rstblog/modules/blog.py
def setup(builder): # snip builder.jinja_env.globals.update( get_recent_blog_entries=get_recent_blog_entries )
Jinja2 に get_recent_blog_entries というオブジェクトを渡している。
なので、テンプレートでこれを呼んでやれば良い。
<div class="side"> <h2>Recent Posts</h2> <ul class="unstyled"> {% for entry in get_recent_blog_entries() -%} <li><a href="{{ link_to('page', slug=entry.slug) }}">{{ entry.title }}</a></li> {% endfor -%} </ul> </div>
get_recent_blog_entries は引数で件数を設定できる。
設定しない場合はデフォルトで 10 件取得するようになっている。
エントリのタイトルを表示し、リンクとしてエントリの slug を設定すると該当エントリにリンクを設定する事ができる。