アップロード時にファイル名をクリーンアップする必要があります。画像フィールド、その他のファイルフィールド、およびIMCEファイルマネージャの両方。 文字変換モジュール はまだDrupal 8およびコミュニティ 同意しないようです に移植されていないため、=でコア文字変換を実装する方法についてDrupal 8。
カスタムモジュール を作成する必要がありますか、それとももっと簡単な方法がありますか?
現在、Drupal 8はファイル名にスペースと特殊文字の両方を許可しているようです。モジュールについて知っています File(Field)Paths ですが、設定する必要がありますすべてのコンテンツタイプのすべてのファイルフィールドで使用できます。IMCEでは機能しないと思います。
Drupal 8コアパッチ このページ から適用しました。正常に動作するようです。/admin/config/media/file-system
に新しいオプションを追加します:
このオプションは、すべてのファイルフィールドへの今後のすべてのアップロードの文字変換を有効にします。 Enable image uploads
が有効になっている場合(テキスト形式の場合)はインライン画像でも機能します。テストインストールにIMCEがインストールされていないため、パッチがIMCEに影響するかどうかはわかりません。
モジュール すでに述べた がDrupalsのセキュリティ勧告ポリシーでカバーされているようです:
アップロード用の文字変換ファイル名- https://www.drupal.org/project/transliterate_filenames
このプロジェクトの安定版リリースは、セキュリティ勧告ポリシーの対象です。
8.x-1.3安定リリースDrupalによってカバーされるセキュリティチーム2019年7月1日リリース
そのためのモジュールがあります https://www.drupal.org/project/transliterate_filenames
すべてのアップロードファイルの文字変換(フィールドとckeditorインラインアップロードを含む)
使用方法:通常どおりモジュールを有効にします。新しいファイル名はすべてラテン文字に音訳されます。
このモジュールを使用してください。このモジュールは Alexander Belov によるブログ投稿に基づいていますが、あまり具体的でないユースケースのために簡略化されています。 https://github.com/jameswilson/filename_transliteration