Contao 4.10.0を利用可能
2020年8月18日 10:20 Leo Feyer
Contaoバージョン4.10.0を利用できます。このリリースは改善したルーティング、メールトランスポート、強化したシンプルトークン、特別なイベント、改善した検索、新しい挿入タグ、新しい画像サービス、さらに多数の新しい機能を含んでいます。
改善したルーティング
ルーティング、すなわちサイト構造でページにURLの割り当てをContao 4.10で大幅に修正しました。ウェブサイトのルート毎に個別のURLプリフィックスとURLサフィックスを設定できる様になりました。URLプリフィックスは有効なロケールに限定されませんので、以下のURLを"German/Switzerland"の翻訳に使用できます:
https://domain.com/de/
https://domain.com/de-ch/
https://domain.com/de-schweiz/
https://domain.com/schweizerdeutsch/
https://domain.com/schweiz/
メインのウェブサイトではURLプリフィックスを付けず、翻訳したページの開始位置だけに付けることさえ可能です:
https://domain.com/
https://domain.com/support
https://domain.com/de/
https://domain.com/de/support
この新しいルーティングと第三者による機能拡張は互換性がない場合があるので、初期状態で無効となっていて、有効にするにはアプリケーション構成ファイルで次の様にしなければなりません:
contao:
legacy_routing: false
シンプルトークン
シンプルトークンはSymfony Expression Languageを使用する様にし、機能の範囲を大幅に拡大しました。例えば、AND/ORの検査とmatches
を使用して正規表現が可能となっています。
{if value == "foo" || value == "bar"}
{if value in ["foo", "bar"]}
{if value matches "^https?://"}
SimpleTokenParser
サービスにより、独自に作成した機能拡張でシンプルトークンを処理することが可能です。
特別なイベント
特別なニュース項目と同様に、特別なイベントに設定してイベントリストモジュールでそれに応じて絞り込める様にしました。
リソース: #1465
ニュースとイベントでメタデータのロボットタグを上書き
メタデータの題名と説明に加えて、Contao 4.10ではニュースやイベント毎にメタデータのロボットタグも上書きできる様にしました。
リソース: #1778
検索の改善
検索機能、特にワイルドカードの検索はContao 4.10で著しく強力になりました。その上、結果の並べ替えは関連性を単語の数による計算ではなく、TF-IDF (単語の出現頻度-逆文書頻度)に基づく様にして大幅に改善しました。
リソース: #1679
新しい挿入タグ
新しい挿入タグformat_date
とconvert_date
により、日付の書式設定やある書式から別の書式に日付を変換できます。
リソース: #1768
フォームのデータをExcelのCSVに
フォームのデータをMicrosoft Excelが読み込めるCSV形式で転送できるようになりました。
リソース: #1870
Symfony Mailer
Contao 4.10はSwiftMailerの代わりにSymfony Mailerを使用します。
リソース: #1829
新しいコマンド
contao:user:create
とcontao:user:list
コマンドで、コマンド行からバックエンドユーザーの追加や一覧できます。
リソース: #1463
Image Studio
Image Studioは画像を簡単に構成してテンプレートに追加できるサービスです。Twig拡張はTwigでImage Studioを使用したい人にヘルパーを提供します。
リソース: #1753, #1528, Documentation
BackendAccessVoterの拡張
BackendAccessVoter
はバックエンドユーザーの全ての権限を確認できる様にしました。ContaoCorePermissions
クラスは一致する定数を提供できますので、IDEの自動補完機能に使用できます。
リソース: #1864
独自のページコントローラー
新しい@Page()
アノテーションで、コントローラーをページとしてタグ付できます。Contao 4.10は次のサービス・アノテーションをサポートしました:
アノテーション | 説明 |
@Callback | イベントリスナーをコールバックとしてタグ付。 |
@ContentElement | コントローラーをコンテント要素としてタグ付。 |
@CronJob | サービスをcronジョブとしてタグ付。 |
@FrontendModule | コントローラーをフロントエンドモジュールとしてタグ付。 |
@Hook | イベントリスナーをフックとしてタグ付。 |
@Page | コントローラーをページとしてタグ付。 |
@PickerProvider | サービスを選択のプロバイダーとしてタグ付。 |
そしてさらにもっと
他の変更の概要は変更履歴から参照できます。
Symfonyの互換性
Contao 4.10はSymfony 4.4 LTSと互換性があります。
更新の注意
Contao 4.10では、リッチテキストエディターはバージョン4またはバージョン5のどちらもインストール可能です。Contao 4.9からアップグレードする時に、次のcomposer.json
をアップグレード前に追加しない限りTInyMCE 5を自動的にインストールします。
"require": {
"contao-components/tinymce4": "^4.7"
}
TinyMCE 5を使用したい場合、忘れずにテンプレートを適切に変更してください。TinyMCEテンプレートはテンプレートブロックを使用する様にしましたので、独自のテンプレートのすべてをコピーする必要はありません。(#2135を参照)