サーバー移転でwpの日本語タイトルの画像がFTPでうまく転送できない時の対処法
wordpressで更新していると、日本語のファイル名になった画像をそのままアップロードして使うことは少なくないかと思います。
で、そのように日本語のファイル名になったファイルを溜めていくと、いざサーバー引っ越しだったり、バックアップなどで、FTP上でデータを移動させようとした時、うまく転送できないエラーが発生する時があります。
こういう時は、FTPソフトの文字コードをチェックすると改善のヒントになるかもしれません。
日本語タイトルの画像がうまく転送できない時の対処法
日本語ファイルを取り扱った時のエラーはたいてい、shift-jisとutf-8の関連がらみです。
なので、まずは、FTPソフトの文字コードの取扱を固定させるようにしましょう。
たとえばwinscpの場合は、「設定」>「高度なサイトの設定」>「サーバ環境」>「ファイル名をUTF-8でエンコード」とクリックしていき、そこが自動になっていれば、いったんオンで固定します。
で、UTF8で固定したところで、データのエクスポートとインポートすれば、基本的には転送できないってことはないかと思います。
この時、エクスポートやインポートのどちらかで文字コード設定が変な風になっていると、FTPの画面では日本語になっていても、内部的には文字化けを起こしている、という状況が発生する時もあるので注意が必要です。
※この画像では、まったく同じ名前のファイルが二個あるように見えるが、じつは片方は文字化けを起こしている。
▼FTPの文字コードを固定して、下記操作をすればWP画像のミスは起こりにくい。
・移転元サーバーでutf8オン⇒/uploads/フォルダをごっそりエクスポート
・移転先サーバーでutf8オン⇒/uploads/フォルダをごっそりインポート
FTPから操作できない時はサーバーのファイルマネージャーから削除する
さくらやエックスサーバーなどであれば、サーバーのコンパネ(管理者画面)にファイルマネージャー機能があるので、FTPを使用せず、ブラウザ上からファイル操作が可能です。
もしFTPソフトでうまく削除できないファイルがある時は、この方法で試してみると綺麗に削除できたりします。(もし、これでもダメなら、難易度は上がりますが、SSH接続でファイル操作すれば確実かと思います。)
まとめ
FTPで日本語名のファイルがある時はきちんと文字コードを固定して、インポートとエクスポートをするようにしましょう。