Как я могу загрузить CSV-файл в WordPress 4.9.9 и выше - PullRequest
0 голосов
/ 16 декабря 2018

недавние изменения в системе безопасности привели к тому, что загрузка csv не работала, сказав, что тип недействителен.Мне нужно обойти это изменение, но мне не удалось это сделать, добавив тип mime к соответствующим фильтрам.

function my_myme_types($mime_types){
    $mime_types['csv'] = 'text/csv'; //Adding csv extension

    return $mime_types;
}

add_filter('upload_mimes', 'my_myme_types', 1, 1);

1 Ответ

0 голосов
/ 19 декабря 2018

Это ошибка - или «функция» безопасности, в зависимости от того, кого вы спрашиваете - в ядре WordPress 4.9.9 и 5.0.1.

Быстрое исправление - добавьте это в wp-config.php

define(‘ALLOW_UNFILTERED_UPLOADS’, true);

Это откроет потенциальные угрозы безопасности, остановив «недавно улучшенную» проверку типов файлов WordPress, но не болееспасибо за риск. WP 4.9.8 или 5.0 пришли с.

Не забудьте включить это в false, если WordPress исправляет ошибку CSV.

Вы можете прочитать более подробную информацию и следить за связанными темами в эта статья для моей базы пользователей.

Вы также можете попробовать добавить это в код темы или плагина, но это в корне меняет способ работы системы MIME в WordPress.Исправляет проблему, но у вас могут быть более долгосрочные проблемы, если вы сохраните это на месте:

function fix_wp_csv_mime_bug( $data, $file, $filename, $mimes ) {
    $wp_filetype = wp_check_filetype( $filename, $mimes );
            $ext = $wp_filetype['ext'];
            $type = $wp_filetype['type'];
            $proper_filename = $data['proper_filename'];

            return compact( 'ext', 'type', 'proper_filename' );
}
add_filter( 'wp_check_filetype_and_ext', 'fix_wp_csv_mime_bug', 10, 4 );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...