Мой файл functions php

Файл functions.php в теме WordPress

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

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

Что стоит хранить в functions.php

  • Подключение файлов темы. В том числе файлов локализации.
  • Настройки темы и дополнительные вспомогательные функции темы.
  • Изменение параметров боковых панелей.
  • Функции для вывода миниатюр.
  • Изменение параметров отображения виджетов.
  • Определение мест под меню навигации.

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

Что не надо хранить в functions.php

  • Функции для панели администрирования (добавление кнопки в панель, редактирование панели).
  • Отключение функций WordPress (к примеру, функций pingback/trackback).
  • Роли пользователей и привилегии.
  • Код виджетов.

В файл functions.php лучше писать только тот код, отключение которого при смене темы не принесёт к сбою в работе сайта. Если код не подходит для включения в файл functions.php, то стоит оформить его в виде плагина.

Белый экран после изменения functions.php

После редактирования файла functions.php может произойти неприятная ситуация — вместо сайта будет показан белый экран. Часто ошибка кроется в том, что программисты пытаются сделать вывод HTML кода непосредственно при подключении этого файла. Но так делать нельзя: необходимо помещать вывод внутрь функции и делать её вызов в других файлах темы сайта.

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

Читайте также:  Помощь при создании html страница

Вывод может быть сделан в функции, но вызывать такую функцию надо в дргуом файле темы, а не в functions.php:

Если переживаете, что после закрывающего тега ?> останется пробел или перенос строки, то уберите весь тег. Компилятор закончит работу с окончанием файла, ошибки не будет:

Временные изменения в functions.php

Существуют некоторые приёмы ремонта сайтов на WordPress, при которых используется вызов функций в файле functions.php. К примеру, если перенести сайт с одного домена на другой и забыть изменить адрес сайта в настройках через панель администрирования, то будет срабатывать перенаправленние на старый домен при попытке загрузки любой страницы сайта. Чтобы решить эту проблему, можно вызвать функции изменения адреса сайта непосредственно в файле functions.php. А так как он загружается при открытии любой страницы сайта, то при первом же срабатывании значения настроек будут изменены.

Для этого откройте файл functions.php текущей темы сайта и добавьте две строчки с функцией «update_option» в самое начало:

Где вместо «https://www.mousedc.ru» поставьте новый адрес своего сайта. Затем загрузите страницу. Адрес пропишется в настройках: исчезнет перенаправление, появится возможность войти в панель администрирования.

После совершения операции удалите обе строки с «update_option». Иначе при каждой загрузке страницы будет выполняться два бесполезных запроса к базе данных, снижая быстродействие сайта.

Источник

Файл functions.php – зачем он нужен, как его редактировать в WordPress

В WordPress можно реализовать множество возможностей. Причём для этого можно использовать как плагины, так и непосредственно вписывать необходимый код в файлы, что относятся к WordPress. И одним из таких популярных файлов является functions.php.

Что за файл functions.php, каковы его задачи

Данный файл в обязательном порядке располагается в директории с используемой темой (дизайна) сайта. В большинстве своём в этом файле прописываются те или иные функции, отвечающие за дизайн и функционал используемой темы сайта (дизайна). Однако это далеко не весь перечень возможностей, что позволяет реализовать данный файл. Этот файл «подхватывается» при непосредственной инициализации движка WordPress, что означает, что имеющийся в файле код исполняется при вызове совершенно любой страницы сайта, включая даже консоль WordPress.

Читайте также:  Css vertically and horizontally centered

Давайте посмотрим, какие задачи можно решать с использованием файла functions.php:

  • Внешний вид, функционал темы – как уже говорилось выше, изначально в этом файле размещается код, в первую очередь отвечает за дизайн и функционал темы. Он может быть самым различным, на усмотрение автора, что создал тему.
  • Функционал сайта – в этом файле может размещаться код, что отвечает в целом за функционал сайта, логику его работы. Вы можете добавить самый различный код, затрагивающий все возможные области функционирования сайта.
  • Консоль WordPress – да, размещаемый в файле код подхватывается и при использовании админ-панели WordPress. Можно что-либо изменить там с помощью всё того же functions.php.

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

  1. Файл functions.php располагается в директории с файлами темы (дизайна сайта). Если, к примеру, вы переключите тему на другую, то будет обрабатываться уже имеющийся там файл functions.php.
  2. Плагин можно в любой момент включить или отключить, а код в functions.php обрабатывается всегда. И если вы туда что-то вписали для расширения функционала, то для его отключения впоследствии следует будет удалить вписанный ранее вами код.
  3. Файл расположен в папке с темой. И если выйдет новая версия темы и вами она будет установлена, то данный файл будет перезаписан, а все сделанные вами в нём изменения будут затёрты.

Где находится файл functions.php

Необходимый файл располагается в директории, где расположены другие основные файлы темы (header.php, footer.php, single.php и так далее). А сама директория располагается по пути wp-content/themes//

Стоит сказать, что одноимённый файл ещё имеется в папке /wp-includes/, где располагаются файлы самого движка WordPress. И этот файл не подлежит редактированию.

Читайте также:  Javascript конструкция with as

Редактирование файла functions.php

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

Отредактировать файл можно двумя способами, давайте их рассмотрим:

  • Первый вариант заключается в использовании возможностей по редактированию файлов, что предлагает сам WordPress. Необходимо в консоли WordPress зайти в меню Внешний вид и далее нажать по пункту Редактор тем и выбрать необходимый файл для правки. Вписывать код необходимо после блока описания темы. На изображении ниже вы можете видеть пример данного блока. Редактируем файл functions.php средствами WordPress В некоторых темах у файла functions.php данного блока нет. В этом случае вписываете желаемый код сразу после . На изображении ниже наглядно это продемонстрировано. Куда вписать код для файла functions.php
  • Второй вариант, позволяющий редактировать файлы в WordPress, это использование FTP клиента для доступа к файлам на хостинге\ сервере и популярного бесплатного текстового редактора под названием Notepad++ для непосредственного редактирования файла. Этот способ весьма удобен и предпочтителен, ведь если внести какую-либо некорректную запись в файл functions.php, то сайт может перестать функционировать, включая админ-панель WordPress. Но это никак не повлияет на работоспособность FTP. Вы всегда сможете моментально отменить все внесённые в файл изменения. И так, используя FTP клиент (их существует множество, как платных, так и полностью бесплатных), настройте в нём доступ к файлам своего сайта (инструкцию по настройке можно получить у провайдера хостинга). Открыв в нём список вашего сайта, перейдите в папку wp-content/themes// и далее откройте на редактирование файл. FTP клиент для доступа к файлам WordPress Впишите или отредактируйте необходимое и сохраните результат. Если что-то пойдёт не так, то вы сможете моментально отменить все внесённые изменения, для этого в верхнем меню имеется пункт Правка ->Отмена или стрелочки на панели инструментов. Редактирование и отмена изменений в файле functions.php

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

Источник

Оцените статью