Содержание
Пример ошибки
После обновления WordPress и перехода PHP на более высокую версию – PHP 7.4, на некоторых страницах сайта, где использовался плагин подсветки синтаксиса Crayon Syntax Highlighter, появилась фатальная ошибка:
Не знаю есть ли смысл что-то делать с этой ошибкой, т.к. сам плагин Crayon Syntax Highlighter давно не обновлялся и, скорее всего, ошибка связана с заменой последней версии PHP.
Как исправить ошибку Fatal error из-за Crayon Syntax Highlighter
Есть три способа решения проблемы: 1 – Использовать другие плагины подсветки синтаксиса (например: Enlighter — Customizable Syntax Highlighter или Code Syntax Block); 2 – сделать изменения в файлах плагина; 3 – скачать обновленный Crayon Syntax Highlighter с Github.
Замена кода
1. Чтобы исправить это, нужно внести изменения в файл плагина Crayon Syntax Highlighter – crayon_langs.class.php:
1
2
3
4
5
6
7
8
9
10
11
|
// В строке, примерно 340, заменить
return preg_replace(‘/[^w-+#]/msi’, ”, $id);
// на
return preg_replace(‘/[^w-+#]/msi’, ”, $id);
|
2. В файле плагина crayon_formatter.class.php удалить строки (118 и 119):
1
2
3
4
5
6
|
$toolbar_height = $font_size * 1.5 . ‘px !important;’;
$info_height = $font_size * 1.4 . ‘px !important;’;
|
вставить (заменить на)
1
2
3
4
5
6
7
|
$crunchify_height = 1.5;
$toolbar_height = $_font_size * $crunchify_height . ‘px !important;’;
$info_height = $_font_size * $crunchify_height . ‘px !important;’;
|
Скачать обновления Crayon Syntax Highlighter
Также, можно скачать обновленный плагин Crayon Syntax Highlighter с самого Github >> github.com/Crunchify/crayon-syntax-highlighter/releases.