Fatal error: Call to undefined function wpcf7_add_shortcode()
4 сентября 2014 в 0:59 в категории Статьи о php 0 комментариевПосле очередного обновления небезызвестного плагина WordPress Contact Form 7 вылетела ошибка Fatal error: Call to undefined function wpcf7_add_shortcode(). В поисках решения этой проблемы я обратился к поисковым системам, но к сожалению, ни коим образом информация, найденная на официальном форуме WordPress мне не помогла. Как же все таки предотвратить эту ошибку?
Решение более чем простое и предельно ясное. При обновлении плагина он сначала отключается, скачиваются новые файлы, и потом он заново активируется. И если у вас в каком-то файле темы без специальной проверки присутствует функция, существующая в файлах плагина, то естественно в случае отключения плагина она не будет доступна — имеем ошибку, и плагин не может заново активироваться после обновления.
Что же делать? Все просто! Найдите строку с вызовом данной функции (файл и строка указаны в тексте ошибки), и добавьте дополнительную проверку на существование функции:
if(function_exists("wpcf7_add_shortcode")){ wpcf7_add_shortcode('hidden', 'hidden', true); }
В этом случае, если плагин деактивирован, функция function_exists() вернет false и скрипт будет работать дальше, а если активирован — вызовет данную функцию с указанными параметрами.
Не знаю, возможно кому-то данная статья покажется ненужной или же слишком простой, но если она вам помогла, буду рад узнать об этом увидев инкремент счетчика лайков 🙂