WordPress: Call to undefined function filter_input()
Ваш блог на платформе WordPress, базирующийся на каком-либо хостинге, может после очередного обновления среды или одного из модулей перестать работать, выдавая следующее сообщение:
Fatal error: Call to undefined function filter_input() in <PATH>on line <NUMBER>
Вариант 1. Версия PHP ниже 5.2
Дело в том, что функция filter_input() появилась в версии PHP 5.2. Вполне возможно, что Ваш хостпровайдер по умолчанию установил на Вашу плошадку PHP версии ниже 5.2. Вы можете это исправить самостоятельно (в панели управления площадкой) или написав в службу поддержки провайдера.
Но и включение PHP версии 5.2 может не являться окончательным решением проблемы.
Вариант 2. Не включен модуль PHP — filter
Некоторые хостпровайдеры, во избежание излишней нагрузки на свои сервера, отключают максимально все модули PHP. Один из этих модулей — FILTER, — отвечает за фильтрацию данных (в том числе, введённые пользователями, а также созданными средой для единственной передачи пользователям).
Среди популярных хостпровайдеров чаще всего с данной проблемой сталкиваются пользователи RU-Center. Подробное подключение к настройке PHP хостпровайдера RU-Center описано в материале. Нет смысла повторять мануал. Естественно, включать нужно не модуль CURL, а модуль FILTER.
Бонус: Ещё несколько Call to undefined function
У RU-Center есть ещё несколько типовых ошибок, которые следует сохранить в записной книжке каждому вебмастеру:
- Fatal error: Call to undefined function simplexml_load_file() in … — требуется расширение simplexml,
- Fatal error: Call to undefined function mb_detect_encoding() in … — требуется расширение mbstring,
- Fatal error: Call to undefined function ctype_alpha() in … — требуется расширение ctype.
Проверили сайт? Заработало? Мы рады!
Комментарии: