日本語を含むファイル名のファイルをアップロードした時に自動的にリネームさせる

概要説明

アップロードファイル名に日本語が含まれていた場合に自動的に英数字のファイル名にリネームさせるカスタマイズ。英数字のみの場合はリネームの対象外にしています。

functions.php
/*----------------------------------------------------
 日本語ファイル名のファイルをアップロードした時にリネーム
----------------------------------------------------*/
if ( !function_exists( 'media_file_rename_md5' ) ){
    function media_file_rename_md5( $filename ) {

        // 英数字・ハイフン・アンダースコアのみの場合はリネーム対象外
        if (!preg_match("/^[a-zA-Z0-9\.\-\_]+$/",$filename)) {

            // 拡張子取得
            $ext = pathinfo($filename, PATHINFO_EXTENSION);

            // 時間を加えて同一ファイル名も別のファイル名になるように
            $filename = md5(time().$filename).'.'.$ext;

            // 英字を小文字に変換
            $filename = strtolower($filename);
        }
        return $filename;
    }
    add_filter('sanitize_file_name', 'media_file_rename_md5');
}

 

なぜリネームを行うのか

ホームページを引っ越しする際にファイル名が日本語になっているとサーバーによっては文字コードの関係で正常に移管できない場合があります。

関連機能

  1. RSSフィードを使ってWordPress同士のコンテンツを共有

  2. WordPress 複数サイトで同じフッターを表示させる簡単な方法 1サイト更新で全サイトに反映が可能

  3. 投稿ページのサイトマップをプラグイン無しで実装できるショートコード

サイドバー

よく使うカスタマイズ

最近の記事

アニメの名言集

正しい戦争なんてない
でも正しさだけが人を救うとは限らない

機動戦士ガンダムUC
by マリーダ・クルス

Profile

PAGE TOP
Amazon プライム対象