[Drupal]アップロードしたファイルの名前を半角英数に自動変換してくれるモジュール「Transliteration」

[Drupal]アップロードしたファイルの名前を半角英数に自動変換してくれるモジュール「Transliteration」

[Drupal]アップロードしたファイルの名前を半角英数に自動変換してくれるモジュール「Transliteration」

Drupalで記事を投稿するときに、画像などのファイルをアップロードすることって多いと思います。

日本語などのマルチバイト文字でファイル名をつけていると、アップロードしたときに「Invalid filename」というエラーが出てファイルを受け付けてくれないときがあります。

そんなときは、単純に半角英数字のファイル名にリネームしてからアップロードすればいいのですが、ファイル数が多いと面倒ですよね。

でもご安心ください。マルチバイトのファイル名問題を一発で解決してくれる便利なモジュールがあるんです。その名もTransliterationです。

スポンサードリンク

Transliterationのインストール

1. Transliterationモジュールをダウンロードします。
2. ダウンロードしたファイルを解凍して、/sites/all/modulesにアップロードします。
3. [モジュール] ページ(/admin/modules)へ移動して、「Transliteration」を有効化します。

Transliterationの対応バージョン

Transliterationは、Drupal7/6/5に対応しています。

Transliterationの設定

Transliterationの設定は何も必要ありません。モジュールを有効化すれば、勝手にアップロードしたファイル名をリネームしてくれます。

もともと半角英数字のファイル名はそのままで、マルチバイトのファイル名だけリネームします。

半角英数にリネーム

例えば、「日本語.jpg」というファイルをアップロードすると、「ri_ben_yu_.jpg」というファイル名に変更されます。変換されたファイル名を見る限り、おそらく漢字なので中国語と判断されてるんでしょうね。

このようにマルチバイト文字を自動でリネームしてくれるので、ファイル名を意識することなく画像などをアップロードできるようになります。

あとがき

私もDrupal使い始めの頃は、マルチバイトの問題には悩まされました。どうにかして日本語のファイル名でも正常にアップロードできないか、試行錯誤して色々やっていましたが、最初からモジュールを探せばよかったですね。

マルチバイト文字のファイルに悩まされている方はぜひお試しください。

この記事が気に入ったら
いいね!してね♪

Twitter で
スポンサードリンク

関連記事

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です