Contao 5.4 - an iconic release

2024年8月15日 10:57 Marcus Lelle - Current issues

他の人たちが休暇のときも、Contaoは一生懸命に働いています: Contao バージョン5.4の登場です。

コアチームと多数の他の開発者は、大好きなCMSをさらに良くしようと、再び多数のプルリクエストを処理してきました。ユーザーと開発者向けの新しい機能を楽しみにしています。

Contao 5.4は2025年2月まで更新されてサポートされます。バージョン5.3も引き続きLTS版として更新を受けます。

現在サポートしているContaoのバージョンはContao release planで確認できます。

ユーザー向け

新しい、標準のアイコンセット

もっともContaoで視覚的に目立つ特徴はLucideアイコンセットです。様々なソースを元とする古いアイコンセットの置き換えは長期間にわたって議論されてきました。

Pull requests: #7278, #7298, #7301, #7302

フォームに新しいspam防止の仕組み

Marco Cupic氏の準備作業による支援により、Contaoは望ましくないボットに立ち向かう別のツールを手にしました。

オープンソースの解決策のALTCHAが利用可能になり、セキュリティ質問の代替手段としてフォームを悪用から保護から守るために使用できます。ALTCHAはプルーフ・オブ・ワークの方法を使用していて、クッキーやフィンガープリンティングを必要としません。このため、この解決策は完全にGDPRに適合しています。

Pull request: #7054

ナビゲーションにARIAのラベル

アクセシビリティに向けた更なる処置のため、ナビゲーションモジュールでARIAラベルを定義できるようにしました。ページに複数のナビゲーション要素がある場合は、一意のラベルで識別できるようにすべきです。

Pull request: #7209

選択処理はセッションと関連した動作をしなくなりました

下位ページでページやアーティクルを限定している場合でも、ページやファイルなどを選択するモーダルはすべてのパスを表示します。

Pull request: #6648

TinyMCE 7との互換性

ContaoはTinyMCEバージョン7もサポートするようになりました。

Pull request: #7249

Contao 5.4はturboをオンにしました

新しいバージョンでは、TurboをContaoのバックエンドに導入して、リンクの知的な先読み込みによってバックエンドを著しく高速化しました。今後はTurboとStimulusを基にしたさらなる最適化も予定しています。

Pull request: #7011

開発者向け

より簡単なテンプレートの属性の上書き

HTML5のテンプレートでは、attr()関数も使用できるようになり、より少ない労力でfe_pageのようなテンプレートを容易にカスタマイズできます。

Pull requests: #7218, #7238

$this->extend('fe_page');

$this->rootAttributes = $this->attr()
    ->set('data-turbo', false)
    ->mergeWith($this->rootAttributes)
;

$this->bodyAttributes = $this->attr()
    ->set('data-controller', 'foobar')
    ->mergeWith($this->bodyAttributes)
;

PageFinder::getCurrentPage() is the new $GLOBALS['objPage']

globals $objPageGLOBALS['objPage']を今後は使用すべきではありません。代替はPageFinder::getCurrentPage()です。

Pull request: #6997

$page = $this->pageFinder->getCurrentPage($request);
$pageId = $page->id;
$pageAlias = $page->alias;

Twig slots

Twigのテンプレート向けに新しいプレースホルダーの関数slotがあります。blocksとは対照的に、slotはinspectorサービスによって予めその存在を確認できます。このようにして、例えば将来のバージョンのContaoのバックエンドでレイアウトに可能なスロットを決めて、モジュールなどによって利用できるようなります。現在、コアでは使用していません。

Pull request: #6999

{# @Contao/foo.html.twig #}
<div class="wrapper">
  {# simple usage #}
  {% slot main %}{% endslot %}

  {# usage with placeholders #}
  {% slot left %}
      <aside>{{ slot() }}</aside>
  {% endslot %}
  
  {# using optional fallback values #}
  {% slot footer %}
      <aside>{{ slot() }}</aside>
  {% else %}
      <!-- there is no footer -->
  {% endslot %}
</div>

/** @var Contao\CoreBundle\Twig\Inspector\Inspector $inspector */
$inspector->inspectTemplates('@Contao/foo.html.twig')->getSlots(); // ['footer', 'left', 'main']

さらにたくさん

すべての詳細な変更はChangelogで参照できます。 Christian Feneberg氏は、またもや見る価値が十分にあるContao 5.4についての動画を作成しました。ドイツ語だけです。

互換性

Contao 5.4はSymfony 6.4と7、PHP 8.1以降、Monolog 3、Doctrine 3、TinyMCE 5, 6, 7と互換性があります。

こちらも参照: チケット | 比較表示 | 変更履歴


Contao 5.4 - an iconic releaseの翻訳です。