Вступление: Здравствуйте! Один из важнейших файлов вашей рабочей темы является файл functions.php
WordPress. Любой администратор сайта обязан знать назначение этого файла и правила работы с ним.
Что такое файл functions.php WordPress?
Файл functions.php
не нужно создавать. Он создан разработчиком темы и включён в каталог темы. Работает файл, как плагин и активируется с активацией выбранной вами темы.
Написан файл functions.php
на языке программирования PHP, с использованием функций и тегов разработанных для CMS WordPress.
Где находится файл functions.php?
Файла functions.php
(файл функций) находится в папке вашей рабочей темы. Чтобы его найти откройте корневую папку вашего сайта. В нём откройте каталог wp-content
, далее каталог themes
. Теперь, открыв каталог с названием вашей рабочей темы вы найдёте файл functions
. Однако не торопитесь его редактировать. Напрямую лучше этого не делать.
Ещё раз обращу ваше внимание: файл функций есть в любой теме WordPress. Он не является шаблонным. Каждый разработчик специально пишет его для своей темы. Однако вы можете его редактировать добавляя новые и изменяя старые возможности вашей темы (о редактировании чуть ниже).
Как редактировать файл functions.php WordPress?
В Интернет вы легко найдёте куски кодов php
, которые нужно добавить в файл функций, чтобы изменить и дополнить функционал темы.
Структура этих кодов узнаваемо проста: в начале идёт function, далее название функции, далее код. В конце кода могут быть: add_action
(хук действия) add_filter
(хук фильтра).
Теоретическое использование подобных функций довольно простое. Вам нужно проверить код на правильный php
синтаксис (это можно сделать тут: phpcodechecker.com) и вставить в файл functions.php
.
Однако напрямую вставлять новую функцию в файл функций рабочего проекта я вам не рекомендую, и вот почему.
Во-первых, неправильный код или его неправильная вставка непосредственно в файл функций могут «убить» ваш сайт.
Примечание: Проблемы с доступностью сайта в результате ошибок на WordPress принято называть «Белый экран смерти». Самое простое решение проблемы «белого экрана» наличие резервной копии сайта. Читать: Резервное копирование сайта WordPress. О более сложных решениях поговорим в следующих статьях.
Ещё раз обращу ваше внимание: самая простая ошибка в коде в виде пропущенной точки с запятой, может заставить весь ваш сайт исчезнуть.
Во-вторых, если вставляемый код правильный и начнёт работать, он исчезнет после первого обновления вашей темы.
В-третьих, если вы смените тему все ваши новые добавленные функции перестанут работать.
Как правильно редактировать файл functions.php?
Есть два правильных варианты редактирования (добавления функций) файла functions.php
. Один простой, второй более сложный.
Простой вариант
Есть великолепный плагин под названием «Code Snippets», автор Code Snippets pro.
Установив его на сайт единожды, вы сможете редактировать файла functions.php
рабочей темы без выше перечисленных опасений. Как работать с этим плагином читайте в следующей статье.
Сложный вариант
Если вы используете дочернюю тему для своего сайта, то править файл функций можно без плагина Code Snippets.
Для этого создаёте в «дочке» файл functions.php
, можно пустой. Далее просто вносите свои новые функции (хуки) в этот файл.
Создать пустой файл просто. В файле должен быть открывающий тег PHP в начале и закрывающий тег PHP в конце. Между ними вы должны вставлять ваши новые функции.
Обратите внимание, что файл functions.php
«дочки» не подменяет такой же файл «родительской темы». В «дочке» он будет загружаться как дополнение к файлу функций родителя, но перед ним. Читать: Самый простой способ создать дочернюю тему.
Пример правки файла functions.php WordPress
Не все темы WordPress в customizer имеют настройки по фильтру рубрик, которые нужно показывать на главной странице последних записей. Это можно сделать с помощью такой функции с хуком фильтра. Вот она:
function exclude_cat($query) {
if ($query->is_home)
{$query->set('cat','-25, -46, -53, -70');} // где -25, -46, -53, -70
//это id убираемых категорий
return $query; }
add_filter('pre_get_posts','exclude_cat');
Итак, функция с хуком фильтра у нас есть. Теперь нужно проверить имеющийся код на синтаксис php
(адрес сервиса проверок выше).
Как видим ошибок нет. Далее нужно вставить этот код на сайт при помощи плагина Code Snippets.
После активации сниппета указанные в коде рубрики не будут показаны в блоге последних записей.
Заключение
В завершении статьи про файл functions.php
WordPress, дам две рекомендацию. Никогда не меняйте этот файл напрямую. Всегда имейте его базовую копию, а лучше свежую резервную копию всего сайта.
©wpkupi.ru
Еще статьи
- Кого назначить администратором WordPress
- Плагин Classic Editor для WordPress 5
- Как администратору восстановить (исправить) поврежденную базу данных WordPress
- Как защитить WordPress вход в админпанель плагином Protect WP-Admin
- Почему не нужно использовать редактор тем WordPress