Functions. php vs. Плагинов WordPress

Примечание: Этот текст может содержать некоторые партнерские ссылки, а это значит, что я зарабатываю небольшую комиссию без каких-либо дополнительных затрат с вашей стороны, если вы воспользуетесь этими ссылками. Спасибо за понимание и поддержку.

Возможно, новичкам не понятен заголовок статьи. Попробую пояснить.

Практически в каждой современной теме WordPress есть файл по имени — functions.php. Он содержит необходимые функции для подключения следующего стандартного функционала темы WordPress:

  • Сайдбары для вывода динамичных виджетов в боковой колонке (колонках)
  • Произвольное меню (одно или несколько)

Это — самый необходимый минимум функций. Но если вам интересно — откройте этот файл в любом редакторе и вы увидите, что в этом файле функций гораздо больше.

Что это за функции? В общих чертах, не останавливаясь на примерах, могу ответить: все эти функции решают огромное число встроенных задач в вашу тему:

  • Подключение скриптов JS и стилей CSS для ускорения их обработки и снижения вариантов внутренних конфликтов между ними
  • Подключение панелей настроек темы WordPress со стороны консоли администратора
  • Подключение оригинальных веб-шрифтов Google или других разработчиков
  • Различные фильтры обработки событий
  • Пользовательские функции разработчика темы WordPress (например, авторская функция постраничной навигации)
  • Дополнительные произвольные типы записей и пользовательская таксономия
  • Фильтры обработки событий цикла вывода новостей
  • И много-много другого полезного функционала

При этом часть вышеперечисленного функционала может и решается с помощью подключаемых плагинов WordPress.

И существует много вариантов, как заменить подключенный плагин WordPress обычной встроенной функцией в файл functions.php.

Основная масса разработчиков тем WordPress считает, что лучше использовать функцию в файле functions.php, чем использовать подключаемый плагин WordPress.

И все-таки: как правильней?

Мой ответ вы услышите в конце этой статьи, а перед тем, как я напишу вам свой вариант ответа, я хочу остановиться на пояснении, в каком случае надо использовать плагины WordPress, а в каком — встраивать функции в файл functions.php.

В чем схожесть плагинов WordPress и файла functions.php?

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

В чем различия между ними?

Эти различия можно коротко сгруппировать по общим признакам:

Область применения

Функции, описанные в файле functions.php, работают только тогда, когда тема — активна. Если тему выключить — будут отключены все описанные в файле функции.

Обновление

Плагины WordPress, как правило, периодически обновляются. Большинство функций файла functions.php чаще всего не обновляются. Практически не обновляются бесплатные темы, очень редко — платные, особенно что касается функциональности.

Администрирование

Плагины WordPress всегда отображаются в Консоле администратора, раздел Плагины. Функционал файла functions.php чаще всего не виден, или он запускает, к примеру, пользовательские типы записей, которые появляются в Консоле администратора после активации темы WordPress.

Теперь основное:

Когда мы можем или должны использовать плагины WordPress, а когда — файл functions.php вместо плагинов?

Использовать плагины WordPress надо в следующих случаях:

  • Если плагины применяются для расширения административной части вашего сайта (интерфейса администратора или других ролей ваших пользователей)
  • Функционал мульти-сайта должен быть реализован плагинами
  • Функционал безопасности сайта должен быть реализован плагинами

Использовать встроенные функции в файл functions.php надо в следующих случаях:

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

из книги ‘Копаемся в WordPress’

Важно! Эта запись может содержать ссылки на плагины, которые к моменту вашего чтения и скачивания могут работать не корректно. Будьте внимательны.

Добавить комментарий

Ваш email нигде не будет показан. Обязательные поля помечены *