WordPress: add_filter в плагине игнорируется - тип мультимедиа json - PullRequest
2 голосов
/ 03 мая 2019

Я пишу плагин, который будет использовать файл JSON. Следовательно, я должен иметь возможность загружать их в медиа в wp-admin. Однако я получил стандартную ошибку: «Извините, этот тип файла не разрешен по соображениям безопасности». Я добавил следующий код в самом начале основного файла моего плагина:

add_filter( 'upload_mimes', 'my_myme_types' );
function my_myme_types( $mime_types=array() ) {
    $mime_types['json'] = 'application/json';
    return $mime_types;
}

Что я делаю не так?

1 Ответ

0 голосов
/ 03 мая 2019

Я думаю, проблема в

  1. Ваш фрагмент не называется.Пожалуйста, попробуйте добавить свой код к wp-content/your-theme/functions.php - и проверьте, все ли в порядке.
  2. Или, пожалуйста, попробуйте увеличить приоритет для add_filter( 'upload_mimes', 'my_myme_types', PHP_INT_MAX ); - Возможно, у вас есть плагин безопасности.

Также, пожалуйста, убедитесь, что ваш плагин активен, и ваш фрагмент называется;Вы можете проверить это, добавив этот фрагмент к wp-content/your-theme/functions.php

ob_clean();
var_dump( has_filter( 'upload_mimes', 'my_myme_types' ) );
exit;

Если вместо числа вы видите false - это значит - ваш фильтр не зарегистрирован.В этом случае, пожалуйста, попробуйте разместить код в

wp-content/plugins/your-plugin/your-plugin-main-file.php

После описания плагина

add_filter( 'upload_mimes', 'my_myme_types' );
function my_myme_types( $mime_types ) {
    $mime_types['json'] = 'application/json';
    return $mime_types;
}
...