既存モディファイアstrtoupper・ucaseの別名として動作します。指定した文字数ごとに改行します。禁則処理を行なわないため日本語の文章を処理する場合は句読点の扱いなどに注意が必要です。複数のモディファイアを数珠つなぎにできるため、組み合わせ次第で複雑な処理が可能ですが、あまり複雑になると分かりにくくなるため、場合によっては一連の処理をまとめてスニペット化するなど検討してください。/>タグに変換します。nl2brモディファイアと違い、<table>タグや<div>などブロック要素に対しては処理を行ないません。/>nl2brモディファイアの場合。/>タグを追加します。</td></tr></table>addBreakモディファイアの場合。/>タグを追加しません。CSVデータまたはTSVデータ(タブ区切り)をtableタグによる表組みに変換します。エクセルからコピー・ペーストで貼り付けたデータはタブで区切られており、そのまま表組みを再現できます。文章の一部を切り出します。指定された文字数ちょうどで切り出すlimitモディファイアと違い、句点(。)を考慮した自然な切り出しを行ないます。content="[*content:summary*]"><@ENDIF-->利用例http://chibinowa.net/modx/features/modifier.htmlその他、既存のモディファイアの使い方については上記サイトをご覧ください。スニペットに対してmathモディファイアを使えるように改善MODXは誕生してから15年が経過しました。いう文章を簡単なスニペットとmathモディファイアを使ってシンプルに自動生成したい場合。time();UNIXタイムスタンプを返す上記のような簡単なスニペットを「Now」という名前で作ります。[[Now:dateFormat(Y):math(?-2005):hanzen]]上記のように記述すると、mathモディファイアのプレースホルダ文字である「?」のためにスニペットが意図どおりに動作しません。(※後日コアを改善する予定です)[[Now:dateFormat(Y):math(%s-2005):hanzen]]プレースホルダとして「%s」を使えるようにしました。MODXは誕生してから[[Now:dateFormat(Y):math(%s-2005):hanzen]]年が経過しました。PHxのフィルター処理を任意の文字列に対して直接適用できるようにしました[+@test@example.com:spam_protect+]上記のように記述すると、<script>document.write('test&#64;example&#46;com');</script>メールアドレス文字列をスパムロボットに検出されにくい書式に変換します。[+@0123456789abcdefghijklmnopqrstuvwxyz:shuffle:limit(8)+]パスワード候補などに使えるランダム文字列を生成します。従来は、PHxの機能自体を利用したい場合は、チャンクやテンプレート変数を作って、その中に値を保存する必要がありました。今回の改善により、PHxの機能を手軽に利用できるようになりました。[+@文字列+]という書式は暫定的なものなので、将来変更する可能性があります。(コロン)を含むことができません。次バージョンで対応します。[+@いろはにほへと,ちりぬるをわかよたれそ,つねならむうゐのおくやま,けふこえてあさきゆめみし,ゑひもせす:dataGrid+]複数行記述にも対応します。ゑひもせすこのように表示されます。@IF文の書式を改善1.0.13Jより試験的に実装していた@IF記法を改善しました。[*content*]<!--@ENDIF-->上記の従来の記法では、@IF文が書かれたテンプレートをファイル化しブラウザで開いてプレビューすると、判定の結果表示されるHTMLブロックがそのまま表示され、@ELSE句が書かれていると両方表示されるため問題がありました。[*content*]<@ENDIF-->新しい記法は上記のとおり。[*content*]<@ENDIF-->今回の記法改善により@IFから@ENDIFまで全てをHTMLコメント化できますので、DreamweaverやTinyMCEなどで編集する際にMODX独自の記述として干渉しません。内蔵PHxにおいてthen-elseモディファイアの記述を省略可能にisモディファイアなど判定系のモディファイアを利用する場合に、then-elseモディファイアの記述を省略できるようにしました。省略した場合、1または0の値を返します。<!--@IF:[*pagetitle:find(new):then(1):else(0)*]>【新着情報!】[*pagetitle*]<@ENDIF-->たとえば上記のような場合、<!--@IF:[*pagetitle:find(new)*]>【新着情報!】[*pagetitle*]<@ENDIF-->このように記述することができます。<h2>[*pagetitle*]</h2><@ENDIF-->テンプレートごとの出し分けをシンプルに記述できます。MODXの@IF文は値の有無しか判定できませんが、PHxフィルターを利用することで、複雑な判定を行なうことができます。今回の改善によりthen-elseモディファイアを省略できるようになったため、フィルター記述をシンプルにすることができます。@IF文に書き換えることができます。従来もこの方法で表示できましたが、<!---->という文字列がHTMLソースとして含まれるため、TinyMCEが動作している投稿画面上にコピー・ペーストするとMODXタグとして機能しないという問題があり、これを解決しました。任意のリソースのデータを表示する方法を追加しました[*pagetitle@8*]上記のように記述すると、ID8のリソースのpagetitleを表示します。EvolutionのフォークプロダクトであるClipperCMSの記法に倣いました。[*pagetitle@parent*]親リソースのpagetitleを表示します。[*pagetitle@ultimateParent*]現在のリソースを子孫?に持つ最上位のリソースのpagetitleを表示します。[*pagetitle@3/ultimateParent*]現在のリソースを子孫に持ち、ID3のリソース階層以下に属する最上位のリソースのpagetitleを表示します。[*pagetitle@ultimateparent*][*pagetitle@ULTIMATEPARENT*]大文字小文字の違いを区別しません。[*pagetitle@p*][*pagetitle@up*]略記できます。それぞれparent・ultimateParentです。[*pagetitle@site_start*]あまり用途はないかもしれませんが、トップページのpagetitleを表示できます。[*pagetitle:8*]1.0.14J-r8で利用可能になった上記の記法も使えますが、この記法は内蔵PHx機能のIDモディファイアの略記なので、処理内容は異なります。注意点テンプレート変数編集画面内でのスニペットコール記述1.0.14J-r8からテンプレート変数編集画面内のオプション欄などでスニペットコールを記述できるようにしましたが、スニペットコール文字列自体をそのまま値として保存したい場合に問題があることが分かったため、仕様を改めました。@PARSE:[[スニペットコール]]または@MODX:[[スニペットコール]]このように記述してください。(どちらも同じです)テンプレート変数編集画面のオプション欄で動作させるタイプのスニペットとしてはddTreeなどがあります。これらのスニペットを使うには、従来は@EVAL制御下で$modx->runSnippet()を通じて呼び出す必要がありましたが、今回の改善により、スニペットコールをそのまま記述することで動作させることができるようになります。$modx->runSnippet('ddTree',array('doc'=>8));従来はこう書く必要がありましたが@PARSE:[[ddTree?doc=8]]このように書くことができます。[*content:trim:addBreak*]<!--@ENDIF-->従来はこのように記述していました。このテンプレートをファイル化してブラウザで開くと、[*content*]と[*content:addBreak*]の両方が表示されてしまいます。[*content:trim:addBreak*]<@ENDIF-->従来の記述も使えますが、今回よりこのように記述することをおすすめします。ブラウザでプレビューできるようにする場合は、@IGNORE文を使ってダミーテキストを埋めておくとよいでしょう。そのため0が返ることを想定していないコードにおいて意図しない結果になることがあります。PHxモディファイアと同名のスニペットに注意Revolutionと同様に、PHxのプリセットモディファイアの機能を同名のスニペットで置き換えられるようにしています。そのため、特に意識せず同名のスニペットを運用している場合は、モディファイア記述において誤動作が起きることがあります。「date」というスニペットが存在する場合は[*editedon:date(Y年m月d日)*]などの記述は意図しない出力になることがあります。特定のモディファイアのみ動作が怪しい場合は、同名のスニペットがないか確認してください。次の1.0.15Jでは下記のような変更を予定しています。気付いた点があればフォーラムまたは問い合わせフォームからフィードバックをお願いします。開発に参加して自ら機能追加・改善などを行なってみたい方もお気軽にご連絡ください。http://mblo.info/modifiers/上記に内蔵フィルターのチートシートがあります。全て動作確認済みとのことです。