WEB-Программист
Переключить навигацию

Язык

  • Русский
  • Русский
Связаться с нами

Поиск

  • Книги
  • JavaScript
  • HTML и CSS
  • Другие
  • SEO
  • wordpress
  • Дизайн
  • Laravel
  • Phyton
  • React js
  • Android
  • SQL и языки запросов
  • Yii
  • Шрифты
  • Статьи
  • Laravel
  • wordpress
  • Темы Wordpress
  • Интернет магазин
  • JavaScript
  • © 2015-2026 Andrii Beznosko

  • Hosting CityHost

Вся правда о functions.php

  • Описание
  • Описание/Скачать
  • Обсуждения
  • Пожаловаться

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

Что такое functions.php

Если вы хоть раз открывали исходный код любой темы для WordPress, вероятно вы сталкивались с файлом под названием functions.php. Файл functions.php Основная цель данного файла — предоставить дополнительные функции необходимые для полноценной работы темы, а также установить некоторые параметры для ядра WordPress, например размер миниатюр, путь к файлам локализации темы, разделы для виджетов и другие. Файл functions.php загружается при каждом запросе любой страницы в WordPress, включая запросы в панель администрирования и AJAX запросы. Это дает разработчикам темы возможность изменять любые аспекты их проекта на WordPress, а не только то, что связано с внешним видом. К сожалению многие уроки WordPress в сети Интернет (серии «без плагинов») предлагают вставлять блоки кода именно в файл functions.php активной темы, потому что редактировать этот файл легче, чем создавать новый плагин, особенно через редактор файлов в панели администрирования WordPress. Редактор файлов темы в WordPress Таким образом после прочтения серии подобных уроков, файл functions.php становится огромным и нечитаемым, а при смене активной темы пропадает часть функционала, которая вовсе не относится к внешнему виду сайта.

Чем functions.php отличается от плагина

Если коротко — то ничем. Если взглянуть на порядок загрузки ядра WordPress в файле wp-settings.php, то мы увидим что файл functions.php активной темы загружается немного позднее всех активных плагинов, но данный порядок не дает каких-либо преимуществ или недостатков. А содержание файла functions.php и файлов плагинов подключаются и выполняются идентичным образом. Основным отличием плагинов от functions.php является то, что плагины можно выборочно активировать через интерфейс, а файл functions.php активной темы загружается всегда. Таким образом при смене активной темы мы теряем все, что было написано в старом файле functions.php, но наши активные плагины продолжают функционировать.

Мифы о производительности functions.php

Некоторые источники утверждают, что functions.php работает быстрее чем плагины, и иногда даже советуют переместить код из файла плагина в файл functions.php для его «ускорения». Это неправда. Как мы уже упомянули, файлы плагинов и файл functions.php подключаются и исполняются идентичным образом, и PHP код размещенный в плагине и в файле functions.php будет выполняться с абсолютно одинаковой скоростью. Список активных плагинов в базе данных WordPress хранится в одной опции, которая будет выбираться с одинаковой скоростью, независимо от количества активных плагинов. Иными словами, количество активных плагинов не влияет на скорость работы сайта на WordPress. Влияет лишь их содержание, ровно так же как и содержание файла functions.php.

Когда следует использовать functions.php

Как было сказано ранее, файл functions.php предназначен для функционала, связанного с темой или внешним видом сайта. Ниже представлен список примеров того, что следует писать именно в файле functions.php:
  • Установление ширины содержимого в WordPress
  • Объявление доступных разделов для виджетов в теме
  • Установление пути к файлам локализации темы
  • Объявление поддержки миниатюр и их размеры
  • Объявление поддержки навигационного меню в теме
  • Подключение требуемых скриптов и стилей для темы
  • Подключение стилей темы для визуального редактора
  • Создание раздела с настройками темы
  • Создание дополнительных элементов управления в конфигураторе темы
  • Дополнительные функции используемые в шаблонах темы
Список далеко не исчерпывающий, но дает понять какого рода функционал стоит хранить в файле functions.php. Для контрастности приведем короткий список сниппетов, которые не стоитхранить в functions.php:
  • Код счетчиков Google Analytics или Яндекс.Метрики
  • Произвольные типы записей или таксономии в WordPress
  • Дополнительные скрипты и стили, не связанные с темой
  • Дополнительные роли и привилегии
  • Код для вставки рекламных баннеров в содержимое сайта
  • Отключение RSS лент
  • Скрытие версии ядра WordPress (этого делать вообще не стоит)
  • Скрытие верхнего меню администрирования WordPress
  • Отключение ревизий записей
  • Отключение функций pingback/trackback
  • Любые шорткоды
При столкновении с очередным отрывком кода, попробуйте задать себе простой вопрос — что произойдет при смене активной темы в WordPress? Если ваш ответ «перестанут работать счетчики посещаемости», «пропадут все произвольные типы записей», и т.д. то данный отрывок лучше хранить в виде плагина.

Как создать свой плагин

Для многих начинающих WordPress разработчиков тема создания собственных плагинов является сложной. Действительно для написания хорошего комплексного плагина для WordPress потребуется немало усилий и знаний в программировании, но, если вам нужно лишь вставить небольшой отрывок кода, то для этого подойдет и простой короткий плагин:
<?php
/**
 * Plugin Name: Моя альтернатива файлу functions.php
 */

// Ваш код здесь
Сохраните этот файл под названием my-functions.php и разместите его в директории wp-content/plugins. После этого перейдите в раздел Плагины в панели администрирования WordPress и активируйте его.

Hosting GM Host
Автор: Неизвестный осточник
Год издания: 2012
Категория: Главная » Статьи » Wordpress » Вся правда о functions.php
Издатель: не известно
Язык: Русский
Статус: Для продвинутых программистов
Формат: text
Количество страниц: 22
Ссылка для скачивания: Download
Добавил: Сен 26, 2014 18:08 Andrii

Все книги, представленные на этом сайте, предназначены только для ознакомления. Любое использование допускается только в обзорных целях. Если вы планируете дальнейшее использование, приобретите их у правообладателей. Администрация сайта не несет ответственности за использование этих материалов. WEB-Программист

Всего комментариев: 0
Оставить комментарий Отменить ответ

Ваш email не будет опубликован.

Все книги, представленные на этом сайте, предназначены только для ознакомления. Любое использование допускается только в обзорных целях. Если вы планируете дальнейшее использование, приобретите их у правообладателей. Администрация сайта не несет ответственности за использование этих материалов. WEB-Программист

Все книги, представленные на этом сайте, предназначены только для ознакомления. Любое использование допускается только в обзорных целях. Если вы планируете дальнейшее использование, приобретите их у правообладателей. Администрация сайта не несет ответственности за использование этих материалов. WEB-Программист

Книги из этой категории:
Как сверстать тему для WordPress

Как сверстать тему для WordPress

Добавление темы Для начала в папке themes создадим папку нашего шаблона «whitesquare». В ней будет находиться папка images и два ...

Смотреть

Видеокурс по SEO-оптимизации WordPress

Видеокурс по SEO-оптимизации WordPress

Представляю вашему вниманию бесплатный Видеокурс по SEO-оптимизации WordPress. Курс охватывает все основные темы, изучив которые вы сможете провести полную внутреннюю ...

Смотреть

Миниатюры в WordPress. Как сделать поддержку миниатюр в WordPress и настроить отображение

Миниатюры в WordPress. Как сделать поддержку миниатюр в WordPress и настроить отображение

Проверяем поддержку миниатюр в WordPress Для начала нужно убедиться в том, что наш шаблон поддерживает миниатюры для записей. Для этого ...

Смотреть

Введение в глобальные переменные WordPress

Введение в глобальные переменные WordPress

Начинаем небольшую серию статей по глобальные переменные WordPress. В данном выпуске мы рассмотрим ряд практических упражнений, которые демонстрируют важность глобальных ...

Смотреть

Как раскрутить блог на WordPress?

Как раскрутить блог на WordPress?

Вы создаете свой блог на системе WordPress и конечно же хотите, чтобы его посещало как можно больше людей. Возникает закономерный ...

Смотреть

При обновлении просит FTP доступ WordPress

При обновлении просит FTP доступ WordPress

Часто при установке плагинов на свой сайт (особенно на localhost) Wordpress прости дать ФТП доступ Это часто раздражает. Что б ...

Смотреть

Наши партнеры
GM Host Banner
Вся правда о functions.php
Вся правда о functions.php

Смотрите также:

При обновлении просит FTP доступ WordPress

Часто при установке плагинов на свой сайт (особенно на localhost) ...

WordPress при обновлении плагинов просит ввести ftp

Не раз сталкивался с проблемой на localhost, что после установки ...

« 50 оттенков серого » – новелла для дизайнеров

Читали ли вы эротический роман «Пятьдесят оттенков серого»? Несмотря на ...

Как раскрутить блог на WordPress?

Вы создаете свой блог на системе WordPress и конечно же ...

При обновлении темы сохранить ключи и счетчики для Yandex, Google и. т. д

Часто при ре дизайне темы для Wordpress сталкиваются с такой ...

4 способа задать цикл loop WordPress

Здравствуй, дорогой читатель! Сегодня хочу продолжить пополнять копилку разработчика WordPress ...

Связаться с нами

- Премиум темы и плагины WP Star бесплатно -

We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept”, you consent to the use of ALL the cookies.
Cookie settingsACCEPT
Manage consent

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
CookieDurationDescription
cookielawinfo-checbox-analytics11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checbox-functional11 monthsThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checbox-others11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-necessary11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-performance11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
viewed_cookie_policy11 monthsThe cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
Functional
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
Performance
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
Analytics
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
Advertisement
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
Others
Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.
SAVE & ACCEPT