Welcome !! Now 2010.03.14 01:27 (JST)

Ditto 2.x と 1.x の違い

Ditto 2.x 系と1.x系ではいろんな面で違いがあります。

主な違いは、[+summary] の扱いとアーカイブの扱いです。特に、アーカイブの表示には、Ditto 側で「extenders」パラメータを使ったり、アーカイブ表示用にReflect スニペットと連係させたりする必要があるなど、少し複雑になっています。

ここでは、おおまかに、それらの説明をしています。

1.x系と2.xの違い

変更されたパラメータ

以下のパラメータが変更になりました(古いパラメータでも動くようですが、廃止されていくと思われるので、新しいパラメータを使った方が良いと思います)。

  • startID => parents
  • summarize => display
  • FormatType => dateSource
  • descendentDepth => depth
  • tplAltRow => tplAlt
  • tplFirstRow => tplFirst
  • tplLastRow => tplLast
  • tplArchivePrevious => tplPaginatePrevious
  • tplArchiveNext => tplPaginatePrevious
  • emptyText => noResults

廃止されたパラメータ

  • mode
  • truncChars

reflect に移管になったパラメータ

  • displayArchive
  • archiveDateType
  • archivePlaceholder
  • tplArch
  • archiveText

置き換え

  • hiddenTVs…hiddenFields で置き換え?

その他変更点

デフォルトの出力結果が変わりました。2.x 系では、「ページタイトル(pagetitle)」「要約(introtext)」「作成日(date)」となります(summary なし)。

テンプレートで [+summary+] を利用する場合は、「extenders=`summary`」とします。 [+summary+] は、将来的にサポートされなくなるので、なるべく使わない方がよいでしょう。

テンプレート変数を指定する場合、1.x 系ではプリフィックス「tv」をつけていましたが、2.x 系ではつけないようになりました。

原文はこちらです。

extenders について(概要)

原文はこちら

extender とは、Ditto の機能を拡張する機能(パラメータ)です。

「extenders=`xxxxx`」で指定します。その実態は、「extenders」フォルダ下にあり、ファイル名の先頭がパラメータの値になるようです。標準では、以下の5種類(パラメータ)があります。

summary

[+summary+] [+link+]を有効にするパラメータです。また、「trunc」系のパラメータが有効になります(たぶん)。

request

URLを通して、Ditto のパラメータを利用するためのパラメータです。例えば、ドキュメントで以下のようにコールすると

[!Ditto? &extenders=`request`!]

このドキュメントのURLにDittoのパラメータを追加してそのパラメータを有効にします(機能させます)。こんな感じに

http://www.exsample.com/sample.html&ditto_parents=2

これは、[!Ditto? &parents=`2`!] と同じ意味を持ちます。

tagging

タギングに関するファンクションを有効にします?(まだよく見てないのでウソかも知れません…)

dateFilter

reflect で、月別ページや年別ページを表示させるときに必要です(他にも用途はあるのかも)。

example

新しいファンクションを作るときのひな形だと思います(たぶん)

reflect について(概要)

reflect は、Ditto と連係して年別、月別のアーカイブリストを出力するスニペットです。Ditto2.x に同梱されています。Ditto1.x 系で出力していたアーカイブ関係は、すべて reflect によって出力することになりました。

reflect では、出力パターンをテンプレートで指定できます。

アウトプットサンプル

年別一覧

  • 2004
  • 2005
  • 2006
  • 2007
  • ……

月別一覧

  • 2007
    • April
    • March
    • February
    • January
  • 2006
    • December
    • November
    • October
    • ……
  • ……

個別(各ドキュメント)も表示

  • 2007
    • April
      • entry 1 04.28 15:03
      • entry 2 04.09 11:38
      • ……
    • March
      • entry 1 03.21 20:15
      • entry 2 03.15 09:15
      • ……

スニペットコールサンプル

Ditto コールサンプル
[!Ditto? &parents=`54` &extenders=`dateFilter` &display=`all` &dateFormat=`%Y/%m/%d %R` &id=`myDittoCall`!]
Reflect コールサンプル
[[Reflect? &targetID=`282` &getDocuments=`1` &dittoSnippetParameters=`parents:54` &groupByYears=`1` &tplMonth=`ditto_month` &monthSortDir=`DESC` &dateFormat=`%Y/%m/%d %R` &id=`myDittoCall` &showItems=`1`]]

以下は必須です。

Ditto 側
  • 「paremtes」で取得したいドキュメント群のドキュメントを指定する
  • 「extenders」で「dateFilter」を指定すること
  • 「id」を指定する
Reflect 側
  • 「dittoSnippetParameters」で「parents:Dittoコールで指定したid」を指定する
  • 「getDocuments」で「1」を指定する
  • 「id」で、Ditto 側で指定した id と同じ id を指定する

参考ページ: Reflect - archive by year and month

△ページトップ