Под катом небольшая заметка о том как можно настроить правила для линтинга во встроенном редакторе кода WordPress.
Начиная с версии 4.9 в WordPress встроен редактор CodeMirror. Он поддерживает подстветку синтаксиса для более 100 языков, а также имеет встроенный анализатор кода.
Начиная с версии 4.9 в WordPress встроен редактор CodeMirror. Он поддерживает подстветку синтаксиса для более 100 языков, а также имеет встроенный анализатор кода.
Итак, для изменения параметров нам поможет фильтр wp_code_editor_settings
Первым параметром он принимает массив опций для редактора кода. В нем нас интересует лишь несколько свойств. Подробности см. в документации.
add_filter( 'wp_code_editor_settings', 'change_code_editor_settings'); function change_code_editor_settings( $settings ) { /** * Массив параметров передаваемых в codemirror * @see https://codemirror.net/doc/manual.html#config */ $settings['codemirror'] /** * Массив параметров для CSSLint * @see https://github.com/CSSLint/csslint/wiki */ $settings['csslint'] /** * Массив параметров для JSHint * @see https://jshint.com/docs/options */ $settings['jshint'] /** * Массив параметров для HTMLHint * @see https://github.com/htmlhint/HTMLHint/wiki/Rules */ $settings['htmlhint'] return $settings; }
Примеры
Отключим проверку CSSLint оставив при этом подсветку синтаксиса. (Может быть полезно если вы используете в теме css переменные. #720)
add_filter( 'wp_code_editor_settings', 'disable_csslint' ); function disable_csslint( $settings ){ if ($settings['codemirror']['mode'] === 'css') { $settings['codemirror']['lint'] = false; } return $settings; }
Зарегистрируем глобальную переменную.
add_filter( 'wp_code_editor_settings', 'change_code_editor_settings'); function change_code_editor_settings( $settings ) { $settings['jshint']['globals']['axios'] = false // Глобальная переменная существует $settings['jshint']['globals']['user_rates'] = true // Глобальная переменная существует и доступна для записи return $settings; }
Запретим использовать антибуты без значений
add_filter( 'wp_code_editor_settings', 'change_code_editor_settings'); function change_code_editor_settings( $settings ) { $settings['htmlhint']['attr-value-not-empty'] = true return $settings; }
ссылка на оригинал статьи https://habr.com/post/428135/
Добавить комментарий