MODX Evolution 1.0.14J-r8 をリリースしました
2015年1月28日 20時06分 shortlink:http://modx.jp/?id=1017
MODX Evolution 1.0.14J-r8をリリースしました。不具合修正に重点を置いた安定版です。
ダウンロード
https://modx.jp/download/download_evo.html
上記からダウンロードしてください。
アップデートの手順
https://modx.jp/docs/update.html
上記を参照してください。
変更内容
不具合修正
- 曜日制限設定を行なうと条件に関係なくログインできなくなるため修正
http://forum.modx.jp/viewtopic.php?f=32&t=1500 - PHxモディファイアをチャンクで作った場合、空の値の処理を正しく行えないため修正
- 関数キャッシュの更新タイミングを修正
- リソースツリーのインデント不具合を修正
http://forum.modx.jp/viewtopic.php?f=32&t=1457 - 新規インストール時、プラグインや変数等のプリインストールオプションが反映されないため修正
http://forum.modx.jp/viewtopic.php?f=7&t=1486 - リソース複製時のエラーを修正
- @IF判定のスイッチが逆になっていたため修正
- 管理画面内のSQL Injectionを修正
- リソースプレビュー時、OnLoadDocumentObjectにて$modx->documentObjectを変更しても$_POST値で上書きされるため修正
- チャンク編集画面で「利用エディタ」を選択した際に反応しないため修正。
- ]]> や ;}} などの文字列がコンテンツ中に含まれると誤動作を起こすため修正
- 追加した記事がWayfinderで表示されないため修正
http://forum.modx.jp/viewtopic.php?f=32&t=1465 - カスタムプロセッサでプレースホルダ文字列を出力できないため修正
- [*phx:if=`[*introtext*]`:is=``:then=`[*alias*]`:else=`[*introtext*]`*]
上記のようなコールの場合、最後の *] を取りこぼすため修正(PHx構文に限らない不具合) - テンプレート変数の所属グループが保存できないため修正
http://forum.modx.jp/viewtopic.php?f=32&t=1485 - スニペットコール内に ]]> という文字列が含まれると誤動作するため修正
- 内蔵PHx - idモディファイアの挙動を修正
http://forum.modx.jp/viewtopic.php?p=7953#p7953
仕様変更
- $modx->config['tvs_below_content']の指定時に型を厳密に見ないようにする
http://forum.modx.jp/viewtopic.php?f=7&t=1499 - スニペットコールの入れ子記述を改善
スニペットコール内にスニペットコールが含まれる時、パラメータの値として含まれる場合のみ処理する(パラメータ名に含まれることはほとんどないが、念のため)。ただしシングルクォートで囲まれている場合は処理せずそのままスニペット本体に渡す - 値が空でもPHxに処理を渡す(ifemptyモディファイアに処理が渡らないため)
- PHx - idモディファイア - 非公開の場合は何も出力しない
- Ditto - PHx処理をコア制御(内蔵PHx)に変更
- #98 投稿画面 - menuindexの長さ制限を5桁→8桁に変更
メニューオーダーを2014121300(yymmddss)などの値にできる - カスタムプロセッサでは値が空でも処理を行なう
値が空の場合の処理をカスタムプロセッサに任せるほうが自由度が高いため - Custom tv formでテンプレート変数をパースできるようにする
- カスタムフォームの出力が空の場合は何も出力しないようにする
追加仕様
- OnMakeUrl - $modx->event->vars
- ManagerManager - mm_ddMultipleFields改良
http://forum.modx.jp/viewtopic.php?f=7&t=1497
date・textareaを扱えるようにする - 内蔵PHx - introtextモディファイアを追加
- Internal filter(PHx) - 変数名・変数値・オプションの与え方を調整
$modx->phvers でアクセスできるようにする
(従来は$phxkey・$value・$optという変数名で与えている) - PHx - dateモディファイア改善
strftime関数書式だけでなくdate関数書式も使えるようにする(%が含まれるかどうかで判定) - PHx dateモディファイア改善
dateモディファイアにunixtime形式以外の値が渡ってきた時にstrtotime()関数でunixtime化する - テンプレートで@FILE:を使えるようにする
- New $modx->atBindFile()
- New $modx->addLog()
- New $modx->makeDocumentListing()
- New $modx->setCacheRefreshTime()
$modx->documentListing を参照する古いプラグイン・スニペットに対し互換性を与える - テンプレート変数のオプションでスニペットコールを展開できるようにする
従来は EVAL return $modx->runSnippet('スニペット名') などとPHP文として記述する必要があった - デバイスの種別ごとにキャッシュを生成($modx->uaTypeとしてpc,smartphone,tablet,mobile, オンオフをグローバル設定でセットする)
- hiddenタイプの入力フォームを追加
その他改善
- 2014->2015
- インポート機能のリンクタグ変換精度をアップ
- ManagerManager - mm_widget_tags()
デリミタ文字列の直後に半角スペースを挿入しないようにする
(カンマだけで区切れるとMySQLのFIND_IN_SETが使えるため) - Improved - Give the data passed by reference
- ログイン画面のカスタマイズに失敗した時にログイン画面が表示できなくなるため調整
- サイトキャッシュの初期化を確実に行なう(.siteCache.idx.phpという拡張子を持つファイルを全て削除)
- basicConfig.idx.phpのファイル名をbasicConfig.phpに変更
- ダッシュボードロゴの位置調整
- {{}}や;}}などの文字列を処理対象から外す
- プロセスキャッシュ見直し(ファイルシークタイムレベルの短時間連続生成を行なうことがあるため)
トピックス
パーサの処理を改善
R7に引き続き、パーサの処理を改善しました。
一部のシステムイベントのパラメータのアクセスを改善
システムイベントで利用できるパラメータの与え方を改善しました。
$modx->event->vars
利用できる変数を上記の配列に収めました。一部の値は参照渡しとなっているため、書き換えることもできます。
たとえばOnManagerNodePrerenderでは管理画面リソースツリーのノード名などを個別に変更できます。
- OnManagerNodePrerender
- OnManagerNodeRender
- OnManagerLoginFormPrerender
- OnMakeUrl
現在、上記のシステムイベントで $modx->event->vars を利用できます。従来どおり個別の変数を利用することもできます。
任意のリソースのリソース変数の値を簡単に表示できるようになりました
[*pagetitle:8*]
上記のように記述すると、リソースID=8のタイトルを表示できます。
[*pagetitle:id=8*]
内部処理的には上記のような動作になっています。
[[GetField&docid=8&field=`pagetitle`]]
従来はGetFieldスニペットを使って上記のように書く必要がありました。今回システム本体側で対応することにより、簡易な記述と負荷の軽減を実現しています。
その他
気付いた点があればフォーラムまたは問い合わせフォームからフィードバックをお願いします。開発に参加して自ら機能追加・改善などを行なってみたい方もお気軽にご連絡ください。