MODxでCMSの恩恵を賜りつつ、validを保ち、かつWEB標準化を目指そう
Welcome !! Now 2008.07.25 16:23 (JST)
[ スニペット ]
Reflect は、ドキュメントのアーカイブを出力するためのスニペットです。月間一覧や、年間一覧を表示することができます。利用の際は、Ditot と併用します。単独では機能しません。
参照ページ:Ditto Support Site
[!Ditto? &parents=`54`
&extenders=`dateFilter` &id=`myDittoCall`!][[Reflect? &getDocuments=`1`
&id=`myDittoCall` &dittoSnippetParameters=`parents:54`]]参考トピ: Reflect - archive by year and month
Ditto で出力(取得)している値を取得します(ウソかも)。デフォルト「しない(0)」。これは「1」にセットしないと、エラーが出ます。
Ditto とリレーションさせるためのユニークidを指定します。Ditto 側と同じ値を指定します。
ドキュメントを取得するためのDitto 側のパラメータ及び値を指定します。Ditto 側と同じ値を指定します。「parents=``」 で動作します。
取得したいドキュメント群の親IDを指定します。Ditto 側と同じ値を指定します。
Ditto の外部リソースファイルの場所を指定します。デフォルトは以下です。
[(base_path)]assets/snippets/ditto/
Ditto 2.1 beta の ditto_base と同義です。
Ditto スニペット名を指定します。複数のバージョンのDittoを稼働させている環境で、Ditto 名を変更している場合、このパラメータでそのDitto名を指定します。
Ditto などと同様に、コンフィギュレーションファイルを使った、簡潔なスニペットコールが可能です。Ditto 2.1 beta の「コンフィギュレーションファイルを使う」を参照して下さい
個々のアイテム(ドキュメント)を表示するかどうかを指定します。デフォルト「する(1)」。
年別アーカイブリストを生成するかどうかを指定します。デフォルト「する(1)」。
リンクの基点となるドキュメントを指定します。Ditto コールで「extenders=`dateFilter`」を指定しているドキュメントを指定します。
アーカイブリストを表示するためのデータソースを指定します。
unix タイムスタンプを持つすべてのMODx フィールドや、以下のような テンプレート変数を指定できます。
デフォルト「createdon」。
ここで指定したフィールドを基準としてグループ分けされます。
※「pub_date」を指定した場合、「pub_date」を指定ないドキュメントのグループ分けが「1970」になり、リンクが上手く機能しません。
プレイスホルダ[+date+]の表示形式を指定します。phpのstrftime関数の値を利用できます。デフォルト「%d-%b-%y
%H:%M」。
年の並び順を降順にするか昇順にするかを指定します。デフォルト「降順(DESC)」。昇順にする場合は、「ASC」を指定します。
月の並び順を降順にするか昇順にするかを指定します。デフォルト「昇順(ASC)」。降順にする場合は、「DESC」を指定します。
表示する際のオフセット値を指定します。1、2件目は表示せず、3件目から表示したいなら「2(= 2件スキップする)」を指定します。デフォルト「なし(0)」。
PHx ファンクションを利用するかどうかを指定します。デフォルト「する(1)」。
※PHx ファンクションはDitto の外部リソースに含まれていますので、別途PHxプラグインを導入する必要はありません。
出力用のテンプレートを指定するパラメータです。以下の指定方法があります。
一番外側に来るテンプレートを指定します。デフォルトは以下です。
<h3>Archives</h3>
<div class="reflect_archive_list">
<ul class="reflect_archive">
[+wrapper+]
</ul>
</div>
「tplContainer」の[+wrapper+]に入るテンプレートを指定します。年アイテムのためのテンプレートです。デフォルトは以下です。
<li class="reflect_year">
<a href="[+url+]" title="[+year+]" class="reflect_year_link">[+year+]</a>
[+wrapper+]
</li>
「tplYear」の[+wrapper+]に入るテンプレートを指定します。月アイテムの外側にくるテンプレートです。デフォルトは以下です。
<ul class="reflect_months">
[+wrapper+]
</ul>
「tplYearInner」の[+wrapper+]に入るテンプレートを指定します。月アイテムのためのテンプレートをです。デフォルトは以下です。
<li class="reflect_month">
<a href="[+url+]" title="[+month+] [+year+]" class="reflect_month_link">[+month+]</a>
[+wrapper+]
</li>
「tplMonth」の[+wrapper+]に入るテンプレートを指定します。各アイテムの外側にくるテンプレートです。デフォルトは以下です。
<ul class="reflect_items">[+wrapper+]</ul>
「month_inner」の[+wrapper+]に入るテンプレートを指定します。各アイテムのためのテンプレートをです。デフォルトは以下です。
<li class="reflect_item">
<a href="[~[+id+]~]" title="[+pagetitle+]" class="reflect_item_link">[+pagetitle+]</a> (<span class="reflect_date">[+date+]</span>)
</li>
年や月の表示を日本語風に変える$month_text = $ditto->formatDate(mktime(10,
10, 10, $mon, 10, $year),"%B");↓
$month_text = $ditto->formatDate(mktime(10,
10, 10, $mon, 10, $year),"%m");
上記のようにすると「06、07、08...」という表示になります。
<li class="reflect_year">
<a href="[+url+]" title="[+year+]年" class="reflect_year_link">[+year+]年</a>
[+wrapper+]
</li>
<li class="reflect_month">
<a href="[+url+]" title="[+year+]年[+month+]月" class="reflect_month_link">[+month+]月</a>
[+wrapper+]
</li>