Contao 3.1.beta1のリリースアナウンス

以下は、Contao 3.1.beta1 is availableの翻訳となります。


Contao 3.1.beta1を利用可能

2013年3月28日 14:01 by Leo Feyer

Contaoバージョン3.1.beta1を利用できます。ベータ版を実運用のウェブサイトでは使用しないでください!  このリリースはウェブサイトの確認や独自の機能拡張の調整のためにダウンロードしてください。

ここで、この新しいバージョンの呼び物をいくつか示します。完全な一覧は変更履歴、またはリリースのマイルストーンの完了したチケットを調べてください。(このアナウンスの最後のリンクを参照してください。)

言語方言

Contao 3.1からは、fr-FRのような方言をサポートしています。そしてウェブサイトのルートのページの設定やロケールとして使用できます。(システムの翻訳するときのロケールはfr_FRと書かなければならないことに注意してください!)

ほとんどのリソースをドラッグアンドドロップ

何か、例えばコンテンツ要素の箇条書きやページレイアウトで上下に動かすときにクリックしなければならない小さな2つの矢印を覚えていますか? Contao 3.1でそれらはすべてなくなり、ドラッグアンドドロップで項目を動かすドラッグハンドルに置き換わりました。

コンテンツ要素スライダー

swipe.jsを基にした万能なコンテンツ要素スライダーを追加しました。コンテンツ要素アコーディオンと同様に使用できます: 開始と終了のコンテンツ要素は囲んだコンテンツ要素をスライドでき、スクリプトを初期化する"moo_"と"j_"のテンプレートをページレイアウトに追加します。

スライダーはタブレットと携帯端末でスワイプ操作をサポートします。

アーティクルのアクセス保護

Contao 3.1からは、ページとコンテンツ要素に加えてアーティクルも保護でき、フロントエンドで特定のメンバーグループがアクセスできます。

TinyMCEのリンクと画像ダイアログ

TinyMCEでページや画像を選択するとき、TinyMCEのドロップダウンメニューの代わりにContaoのページ選択とファイル選択を使用するようになりました。

ドメインを認識するナビゲーションモジュール

今まではリダイレクト先のページ、参照するページ、挿入タグが指す他のページが、サイト構造で別のドメインのウェブサイトのルートにある場合、Contaoは現在のドメイン以下でページを開こうとするため、リンクをたどると404のエラーとなりました。Contao 3.1では、これらのリソースはドメインを認識するようになり、正しいドメインと言語のページに移動するようになりました。

モジュールの依存性

Contao 3.1からはモジュールは、そのautoload.iniに他のモジュールを依存性を定義できるようになりました。これらの依存性はモジュールを読み込む順序を決定して、モジュールを"xxx_custom"という冗長な名前を付けることの回避策を提供します。

挿入タグのフラッグ

挿入タグはフラッグをサポートしました。すなわち、PHPの関数に渡すことができます。使用例:

  • {{ua::browser|uncached}}
  • {{page::title|decodeEntities|strtoupper}}

現在、以下のフラッグをサポートしています:

  • uncached: キャッシュファイルに保存するときにタグを保存
  • refresh: キャッシュしたバージョンをすべて無視して出力を再生成
  • addslashes: スラッシュで出力を引用
  • stripslashes: 引用を削除して出力
  • standardize: 出力を標準化
  • ampersand: アンパサンドを実体参照に変換
  • specialchars: 特殊文字を実体参照に変換
  • nl2br: 改行を<br>に変換
  • nl2br_pre: 整形済みのテキスト以外で改行を<br>に変換
  • strtolower: 文字列を小文字に変換
  • utf8_strtolower: Unicodeを考慮して文字列を小文字に変換
  • strtoupper: 文字列を大文字に変換
  • utf8_strtoupper: Unicodeを考慮して文字列を大文字に変換
  • ucfirst: 最初の文字を大文字に変換
  • lcfirst: 最初の文字を小文字に変換
  • ucwords: 各単語の最初の文字を大文字に変換
  • trim: 最初と最後の空白を削除
  • rtrim: 最初の空白を削除
  • ltrim: 最後の空白を削除
  • utf8_romanize: 出力をローマ字化
  • strrev: 出力する文字列を逆転
  • encodeEmail: 符号化した電子メールアドレスを復号
  • decodeEntities: 実体参照を復号
  • number_format: 数値の書式設定 (System::getFormattedNumber())
  • currency_format: 通貨の書式設定 (System::getFormattedNumber())
  • readable_size: 人が読みやすい大きさに出力を変換

ファイルシステムの改善

データベースに支援されたファイルシステム(DBAFS)をとてもうまく改善して、さらに使うのに便利に、そしてより安定して動作するようになりました。改善には以下を含んでいます:

  • ファイル選択はデータベースの代わりにファイルシステムを表示するようになりました。
  • ポップアップダイアログでファイル選択からファイル管理に切り替えができます。
  • ファイル選択は自動的に選択したリソースをデータベースに追加します。

これはファイルシステムとデータベースを手作業で同期する必要はないことを意味します.

  • ページ選択とファイル選択でノードを制限するパンくずメニューを追加しました。
  • 2GBよりお大きいファイルにmd5_file()は適用しないようにしました。
  • フォルダーのハッシュ値は、ファイルのハッシュ値の代わりにファイル名から計算するようにしました。
  • すべてのDBAFSに関係した処理はDbafsクラスに取りまとめました。
  • 通常のユーザーにファイルシステムを同期する権限を付与できるようにしました。

バージョン3.1の新しいフック

  • parseWidget:  ウィジェットを解析したときに呼び出します。
  • getPageLayout: ページレイアウトのオブジェクトを作成した直後に呼び出します。
  • modifyFrontendPage: フロントエンドのページを出力する直前に呼び出します。

modifyFrontendPageoutputFrontendPageの違いは、modifyFrontendPageが呼び出されたときに挿入タグと動的なスクリプトのタグは既に置き換えられていることです。