サポート » 使い方全般 » 画像ファイル以外のアップロードが出来ず困っています

  • 解決済 johnlemmon1

    (@johnlemmon1)


    お世話になります。

    現在wordpressの4.6.10を使用しています。
    以前は(4.6.x 細かいバージョンを失念しました)、JAVAスクリプト(*.js)やhtmlファイル(*.htm *.html)などのアップロードが出来たのですが、現バージョンでは、「このファイルタイプはセキュリティの観点から許可されていません。」のメッセージが表示されアップロードが失敗します。
    設定など特に変更していません。

    レンタルサーバを利用しており、PHPのバージョンが古いためwordpressの最新バージョンへのアップデートは出来ない状況です。

    どのように対応すればよろしいでしょうか。
    当方でも数日調査していますが、解決策が見つかっておりません。
    お助けください。どうぞよろしくお願いいたします。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • JavaScriptもHTMLもデフォルトでアップロード可能なファイルですが、アップロードの際にwp_check_filetype_and_extでファイルタイプが判定されないと不正なファイルと判定されます。

    Array
    (
        [ext] => 
        [type] => 
        [proper_filename] => 
    )

    前述の通りHTMLはデフォルトでは許可されているので、ファイルの中身が空だったり変なファイルでなければアップロードできるはずです。

    Array
    (
        [ext] => html
        [type] => text/html
        [proper_filename] => 
    )

    JavaScriptに対し正しくファイルタイプを返してアップロードできるようにするには以下のコードをテーマのfunctions.phpに追加してください。

    function add_my_file_type( $compact, $file, $filename, $mimes ) {
    	if( pathinfo( $filename, PATHINFO_EXTENSION ) === 'js' ) {
    	        $compact['ext'] = 'js';
    	        $compact['type'] = 'application/javascript';
        	}
    	// HTMLファイルも上手く判定されない場合は以下で無理矢理通すことが可能
    	if( pathinfo( $filename, PATHINFO_EXTENSION ) === 'html' ) {
    	        $compact['ext'] = 'html';
    	        $compact['type'] = 'text/html';
        	}
    
    return $compact;
    }
    add_filter( 'wp_check_filetype_and_ext', 'add_my_file_type', 10, 4 );
    トピック投稿者 johnlemmon1

    (@johnlemmon1)

    manboさま

    対応方法のご連絡ありがとうございます。

    この手順で試してみます。
    確認出来次第、ご返信させていただきます。

    トピック投稿者 johnlemmon1

    (@johnlemmon1)

    manbo さま

    ご連絡が遅くなり、申し訳ございません。

    この手順で設定したところ、正しくアップロードが出来るようになりました。
    とても助かりました。どうもありがとうございました。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「画像ファイル以外のアップロードが出来ず困っています」には新たに返信することはできません。