Блог / Статьи15 июля 2025

Как решить проблему «Fatal error: Uncaught Error: Call to undefined function» в WordPress

Если вы администрируете сайт на CMS WordPress и вдруг увидели белый экран с таким сообщением: Fatal error: Uncaught Error: Call to undefined function ... in /wp-content/themes/your-theme/functions.php on line 23 – не паникуйте. Это распространенная ошибка, которую обычно легко исправить. В этой статье мы разберем, что ее вызывает, как ее диагностировать и как ее решить шаг за шагом.
Кратко: эта ошибка обычно означает, что WordPress пытается вызвать функцию, которая не существует, часто это обусловлено отсутствием плагина, ошибкой в написании или несовместимостью. Чтобы исправить это, проверьте строку ошибки, подтвердите активацию плагина/темы, проверьте версию PHP и поищите отсутствующие включения или конфликты.

Что означает ошибка Fatal error: Uncaught Error: Call to undefined function?

Эта конкретная ошибка указывает на то, что ваш код WordPress пытается вызвать функцию, которая не существует на момент ее выполнения. В результате PHP останавливает выполнение, и WordPress не может загрузить страницу. «Uncaught Error: Call to undefined function» означает, что функция, которую вы пытаетесь использовать, еще не была объявлена, была удалена или недоступна в текущем контексте.

Распространенные причины ошибки Fatal error: Uncaught Error: Call to undefined function?

1. Отсутствующие или неправильно загруженные плагины или темы

Если ваш код зависит от плагина или темы, определяющей функцию, и этот плагин/тема деактивированы, удалены или загружены неправильно, функция не будет существовать при вызове.

2. Несовместимость плагинов

Недавно установленный плагин может быть несовместим с вашей версией WordPress или версией PHP, установленной ранее. Если плагин использует функцию, введенную в новой версии PHP (например, str_contains() в PHP 8.0), старые среды будут выдавать фатальную ошибку.

3. Неправильный пользовательский код

Имена функций в PHP не чувствительны к регистру, но ошибка в написании может привести к неопределенному вызову. Например:


add_action(“init”, “custm_function”); // Ошибка в написании: «custm_function» -> «custom_function»

4. Поврежденные файлы ядра WordPress

Если ваша установка WordPress повреждена или неполная, некоторые встроенные функции могут отсутствовать. Когда основные файлы (например, wp-includes/functions.php) повреждены или отсутствуют, встроенные функции WordPress могут стать недоступными, даже если они обычно существуют.

5. На сервере отключены некоторые расширения по умолчанию

Отсутствие или отключение обязательных PHP-расширений на сервере, в частности mbstring. Это расширение необходимо для работы с многобайтовыми строками, что является критически важным для корректной обработки текстовых данных во многих плагинах и темах WordPress. PHP-функция mb_strlen() является частью расширения mbstring. Если оно не установлено или не активировано на сервере, любой обращение к соответствующим функциям приведет к фатальной ошибке с сообщением о «Call to undefined function». Эта ошибка обычно возникает после миграции сайта на новый хостинг, при смене версии PHP без повторного включения расширений и при установке плагина или темы, которые зависят от mbstring.

6. Отключенные функции по соображениям безопасности

Иногда ошибка возникает, когда код пытается вызвать функцию, отсутствующую в среде выполнения. Часто причина – эта функция намеренно отключена в конфигурационном файле php.ini из соображений безопасности. Например, функции типа exec(), shell_exec(), passthru() или system() часто блокируются на совместных хостингах.

Все еще видите ошибку? Позвольте нам помочь

Мы исправили сотни подобных ошибок WordPress для клиентов по всему миру. Независимо от того, не работает ли ваш сайт после обновления плагина или вы столкнулись с некорректной работой пользовательской темы, мы можем быстро и безопасно диагностировать и исправить проблему.

Как исправить ошибку Fatal error: Uncaught Error: Call to undefined function: пошаговая инструкция

1. Не забудьте сделать резервную копию!

Перед тем, как проводить какие-либо настройки или модификации, сделайте резервную копию всего вашего сайта WordPress (файлы + база данных). Это гарантирует, что вы сможете вернуть все назад, если во время устранения неисправностей что-то пойдет не так.

2. Внимательно прочтите сообщение об ошибке

Посмотрите на файл и номер строки, где возникает ошибка. Это подскажет вам, с чего начать расследование: Fatal error: Uncaught Error: Call to undefined function my_custom_function() in /wp-content/themes/your-theme/functions.php:45 Перейдите к указанному файлу и номеру строки. Проверьте, правильно ли написана функция и объявлена ли она.

прочтите сообщение об ошибке

3. Временно отключите плагины, чтобы проверить наличие конфликтов

Часто ошибка возникает после установки или обновления плагинов. Чтобы проверить наличие конфликтов, последовательно отключайте установленные плагины. Сделать это можно, либо через админку, если к ней есть доступ, либо на хостинге через файловый менеджер, либо FTP. Чтобы сделать это, перейдите к папке plugins и последовательно переименовывайте установленные плагины. Для этого достаточно, например, к названию плагина добавить префикс “old”, или любой другой по желанию.

отключение плагинов, чтобы проверить наличие конфликтов

4. Восстановите или переустановите основные файлы WordPress

Если вы подозреваете, что основные файлы WordPress повреждены, загрузите WordPress заново и перезагрузите все, кроме wp-content и wp-config.php. Или воспользуйтесь встроенной опцией ремонта в панели управления WordPress.

Восстановление или переустановка основных файлов WordPress

5. Проверьте версию PHP и расширения

Убедитесь, что ваша хостинговая среда соответствует требованиям. Некоторые функции требуют определенных версий PHP. Убедитесь, что вы используете совместимую версию:

  • Войдите в свою панель управления хостингом или воспользуйтесь phpinfo();
  • При необходимости обновите до PHP 8.0+;
  • Убедитесь, что необходимые расширения (например, mbstring) включены. Создайте файл phpinfo.php и откройте его в браузере. Проверьте наличие секции mbstring со следующим содержанием:
    
    <?php phpinfo(); ?>
    
    

    и откройте его в браузере. Проверьте наличие секции mbstring. Включение расширения, если у вас есть доступ к конфигурации сервера (например, через php.ini или панель управления), убедитесь, что строка:

    
    extension=mbstring
    
    

    не закомментирована. Если у вас нет административного доступа, обратитесь в службу поддержки хостинга с просьбой включить PHP-расширение mbstring.

    6. Проверьте список отключенных функций

    Чтобы проверить список запрещенных функций в вашей среде PHP, создайте файл info.php со следующим содержимым

    
    <?php phpinfo(); ?>
    
    

    Загрузите его на сервер и откройте его в браузере. Найдите раздел disable_functions — содержит список всех отключенных функций.

    Вывод

    Ошибка «Fatal error: Uncaught Error: Call to undefined function» в WordPress сначала может показаться сложной, но обычно ее легко исправить, если понять, что ее вызывает. Всегда начинайте с прочтения сообщения об ошибке, проверки того, определена ли функция и загружена ли она правильно, а также использования правильных версий WordPress и PHP. Если ошибка оказывается сложнее, чем описанные здесь способы исправления, лучше всего обратиться к нашим опытным специалистам WordPress, чтобы решить ее безопасно и эффективно.

Артем Охрей
Сооснователь Arto Web Agency, веб-разработчик
Работаю в сфере онлайн-бизнеса с 2012 года. Глубоко убежден, что любые детали имеют значение, и без их учета сложно добиться успеха в этой области. Регулярно делюсь своим опытом на профильных семинарах. Если у вас возникли вопросы по этой статье, пожалуйста, напишите мне на электронную почту artem@arto.agency.

Узнавайте о важном первыми!

Учебные материалы, важные новости, обзоры. Мы пишем вам тогда, когда действительно есть что сказать
КОММЕНТАРИИ
КОММЕНТИРОВАТЬ
ВОЙТИ
  • Facebook
  • Twitter
ЭТОТ САЙТ ИСПОЛЬЗУЕТ COOKIES
Мы используем cookies для анализа трафика, обеспечения функций социальных сетей и работы системы комментирования на сайте. Список устанавливаемых cookies находится на этой странице. Согласны ли вы на установку cookie?