テンプレートタグを強化。バックグラウンド処理と再構築キューの実行速度を改善(最大3倍速)。新機能を多数追加した新バージョン ver.2.5の提供を開始します。
以下は記事のフィルタリングの例です。従来のように「mt:setcontext」ブロックタグで囲む必要はなくなりました。
<mt:entries categories="カテゴリ名1 OR カテゴリ名2" tags="タグ名1 AND タグ名2">
</entries>
* 指定はカラム名でもモデル名でも構いません(数値型カラムのリレーションの場合はカラム名限定)。entryモデルのタグ属性 categoriesは categoryでもよく、tagsは tagでも構いません。
* また、同じくオブジェクトをループするブロックタグにタグ属性「author」を利用できるようになりました。表示名ではなくログイン名を指定します。
<mt:entries author="PowerCMSX-support">
</mt:entries>
ファンクションタグ「mt:unset」を追加しました。name属性を指定してテンプレート変数を未定義にします。配列変数のキーを指定することもできます。
<mt:unset name="array[key]">
管理画面にスタイルシートやJavaScriptを追加できる環境変数「user_css」「user_js」を追加しました。
"user_css" : "/PowerCMSX/customized/assets/css/user.css",
"user_js" : "/PowerCMSX/customized/assets/js/user.js",
URLもしくはルート相対パスを指定すると管理画面の HTMLの header内でそれらを読み込みます。
コンタクトの一覧画面がアイコンと色分けで見やすくなりました。ステータスによるフィルタ機能を追加しました。
フィールド(カスタムフィールド)型に選択タイアログ型の「アセット」「アセット(複数)」を追加しました。
プラグイン「FileUploader」を追加しました。Chunked file upload(ファイルを分割してアップロード)機能を利用してアップロードし、データベースのバイナリカラムにデータを格納しないため、PHPや MySQLの設定に依存せず最大 2GBまでのファイルアップロードを可能にします。
画像のサムネイルを作成することも可能です。name 属性には「file_path」を指定してください。
<mt:assetthumbnailurl name="file_path" height="250" square="1" />
これまでサポートされていた「文書全体」「自動」に加え、文書の抽出パターンに「開始点と終了点を指定」「正規表現」「XPath」を追加しました。
XPathを利用することで、「|」を使って複数の要素内容を対象にすることができます。また、「開始点と終了点を指定」「正規表現」「XPath」についてはテンプレート・タグを利用してアーカイブ種別により分岐が可能です。
<mt:if name="archive_type" eq="entry">//*[@id="main_module"]/section[1]/div/div[1]||//*[@id="sub_section"]/section[1]/div/div[1]<mt:else>//*[@id="main_contents"]</mt:if>
管理画面と異なり、バッチ処理で大量のコンテンツを1つのプロセスで再構築を実行すると、再構築ファイル数が増えるごとに利用メモリが増えていき、速度低下を招くことがあります。
定期実行タスク tools/worker.php に指定できる引数が追加され、適切に設定することで高速に再構築キューを実行することができるようになります。
以下は、1分おきに10ファイルずつ3プロセスで再構築を行なう例です。
*/1 * * * cd /path/to/PowerCMSX; php tools/worker.php --task_ids publish_queue --publish_queue_limit 10
*/1 * * * cd /path/to/PowerCMSX; php tools/worker.php --task_ids publish_queue --sleep 15 --publish_queue_limit 10 --publish_queue_offset 10
*/1 * * * cd /path/to/PowerCMSX; php tools/worker.php --task_ids publish_queue --sleep 30 --publish_queue_limit 10 --publish_queue_offset 20
* 各々のタスクについては 実行時に.pidファイルが生成され、以前のタスクが完了していない場合はスキップされます。重複起動はしません。
追加された環境変数を指定することで、cronの設定を変更することなくほぼ同様のことが実現できます。
* これらの環境変数は Windows環境では未サポートとなります。