Блог / Статті15 липня 2025

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

Якщо ви адмініструєте сайт на WordPress і раптом побачили білий екран з таким повідомленням: Fatal error: Uncaught Error: Call to undefined function ... in /wp-content/themes/your-theme/functions.php on line 23 – не панікуйте. Це поширена помилка, яку зазвичай легко виправити. У цій статті ми розберемо, що її спричиняє, як її діагностувати та вирішити крок за кроком.

Коротко: Ця помилка означає, що WordPress намагається викликати функцію, якої не існує. Часто це обумовлено відсутністю плагіна, помилкою в написанні коду або несумісністю певних компонентів веб-сайту. Щоб виправити, перевірте рядок у коді, де виникла помилка, і або приберіть виклик функції, або напишіть її, щоб вона стала доступною у вказаному контексті.

Що означає помилка Fatal error: Uncaught Error: Call to undefined function?

Ця помилка вказує на те, що ваш код WordPress намагається викликати функцію, якої не існує. У результаті цього PHP-інтерпретатор зупиняє виконання, і WordPress не може завантажитися.

Отображение ошибки Cannot modify header information на сайте Wordpress

Поширені причини помилки 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 без повторного ввімкнення розширень.

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(); ?>
    
    
    Увімкніть розширення, якщо ви маєте доступ до конфігурації сервера (наприклад, через 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?