WordPressのプラグインContact Form 7添付ファイルを付けたら日本語ファイル名が文字化けしてしまいました。別にファイルの中身が壊れているわけではないのでこのままでも使えますが客先に渡すには微妙ですよね。。

調べてみたら原因はWP Multibyte Patchを有効化にするとJIS(ISO-2022-JP)エンコーディングで送信するのと、日本語ファイル名をmd5ハッシュ値に変換する処理をしているからみたいです。WP Multibyte Patchを無効化にすると直るみたいです。でも日本語サイトのためWP Multibyte Patchは使いたい・・そんなときこちらで対応できましたのでご参考ください。

対策

(1)wpmp-config.phpファイルを作る

プラグインWP Multibyte Patchのwpmp-config-sample-ja.phpファイルをコピーする。

/wp/wp-content/plugins/wp-multibyte-patch/wpmp-config-sample-ja.php

/wp/wp-contentの直下に置き、wpmp-config.phpに名前を変更する。

/wp/wp-content/wpmp-config.php

(2)wpmp-config.phpファイルの中身を修正

58行目あたりJISUTF-8に変更

$wpmp_conf['mail_mode'] = 'JIS';

 ↓ ↓ ↓

$wpmp_conf['mail_mode'] = 'UTF-8';

103行目あたりpatch_sanitize_file_namefalseに変更
日本語ファイル名をmd5ハッシュ値に変換する処理を無効にします。

$wpmp_conf['patch_sanitize_file_name'] = true;

 ↓ ↓ ↓

$wpmp_conf['patch_sanitize_file_name'] = false;

 
これでとりあえず直りました!ご参考までに。