LoginSignup
3
0

More than 3 years have passed since last update.

Drupal8 Japanese Translation 日本語翻訳ファイル(ja.po)の import/export後のエラー対策

Posted at

先日Drupal8.9.1で起きた現象でした。

環境Aで定義した日本語翻訳データはExportし(ja.poとして出力される)、環境BでそのファイルをImportした後、環境Bの「コンテンツ > ファイル」画面(/admin/content/files)がエラーとなって、開けなくなりました。

手順

【環境A】
 Admin側の「環境設定 > 地域と言語 > User interface translation」画面で、翻訳データの日本語を入力し、保存後、同じ画面の「エクスポート」タブを開き、Languageは「Japanese」に選択し、エクスポートオプションにチェック入れて、エクスポートする
 ※ デフォルトはja.poファイルとして出力される

【環境B】
 1.Admin側の「環境設定 > 地域と言語 > User interface translation」画面で、「インポート」タグを開き、上記出力された「ja.po」ファイルをインポートする
 ※ インポートは順調で終わりました。

 2.別件の確認ために、「コンテンツ > ファイル」画面を開こうとすると、エラーが発生し、表示されませんでした。:scream:
  以下のようなエラーが出力される↓
  >> LogicException: PO files URL should not be public. in Drupal\locale\StreamWrapper\TranslationsStream->getExternalUrl() (line 55 of core/modules/locale/src/StreamWrapper/TranslationsStream.php).

対策方法

 ネット上で調べると、以下の記事に辿り着いた↓
 https://www.drupal.org/project/drupal/issues/2449895#comment-13453160
 
 記事に掲載されている8.9系用のPatchがあるので、そのPatachを与えることによって解決できるではないかと思った。

 一番早い方法として、ComposerでPatchを設定して試したが、エラーになって、Composer installできませんでした。。:cry:
 仕方なく、上記のPatchの修正箇所を確認しながら、ほかのメンバーが直接ソースを手動修正することになった。

 ソースを修正した後、エラーとなった「コンテンツ > ファイル」画面が無事表示された!:clap::innocent:
 ※ Importした「ja.po」はファイルリストの一番目に表示されている

 

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0