Однажды, перед пользователями CMS WordPress встаёт задача добавить на свой сайт скрипт (код) PHP, чтобы привнести или изменить функционал сайта. Сделать это можно разными способами, но мы рассмотрим сначала самый безопасный (при помощи плагина и его графического интерфейса), а затем еще пару вариантов, которые тоже можно взять на вооружение.
Плагин Code Snippets
Для начинающих пользователей я рекомендую добавлять сторонний код при помощи именно этого плагина, ну или похожих аналогов, например, WPCode
Начнём пошагово:
- Перейдите в раздел Плагины
- В разделе Плагины, при помощи поискового запроса «Code Snippets» отыщите нужный нам плагин
- Установите нужный плагин
После установки, плагин должен появиться в разделе Плагины. Теперь его необходимо включить
- Активируйте плагин
После его активации в разделе меню появится его ссылка
- Перейдите в раздел Сниппеты
На первый взгляд рабочий экран программы может напугать начинающего пользователя, но на самом деле лишнего в нём ничего нет.
Подробно ознакомиться с плагином можно в этом видео:
Ну а мы продолжим и добавить произвольный PHP-код.
- Выберите Добавить Новый
Перед нами появится экран добавления нового сниппета.
- Дайте осмысленное название, о том что будет делать добавленный код
- Добавьте PHP-код.
Обратите внимание, что открывающийся тег PHP <?php уже присутствует в области и его добавлять не нужно.
- Выберите часть сайта (приватная — панель администратора, публичная — то что видят все в интернете)
Так как мой скрипт должен удалять логотип WordPress в панели управления сайтом, я выбираю Only run in administration area
Если сомневаетесь, то оставляйте первый вариант Run snippet everywhere — это позволит скрипту выполняться по всему сайту, как по приватной его части, так и по публичной
При желании можете дать подробное описание назначения этого PHP-кода и отметить специальными тегами, например, такими, которые будут говорить куда предназначен скрипт:
- Активируйте и сохраните ваш добавленный код
Если вы всё сделали правильно и не произошло ошибки, то в разделе всех сниппетов вы непременно должны увидеть ваш добавленный скрипт. Кстати, в любой момент его можно отключить 🙂
Ошибки
Преимущество данного метода в том, что он оберегает вас от ошибок и если вы, например, забыли где то поставить кавычку (а скорее всего просто не скопировали её), то сайт «не поломается». В этом случае сниппет просто не активируется и выдаст предупреждение:
В данном случае мы получили сообщение о синтаксической ошибке.
Добавление через код
Этот метод не безопасный (для новичков), но делает процесс прозрачным и в сравнении с плагином, конечно же менее ресурсоёмким, так как плагины занимают больше вычислительных мощностей, чем простое добавление функций в файл.
Плагин Theme Customisations
Если заглянуть в файл functions.php известной, простой темы для интернет-магазина на WordPress — Storefront, то можно обнаружить примечание от разработчиков:
Note: Do not add any custom code here. Please use a custom plugin so that your customizations aren’t lost during updates.
https://github.com/woocommerce/theme-customisations
https://github.com/woocommerce/storefront/blob/trunk/functions.php
В этом сообщении нас призывают не добавлять код в functions.php, а воспользоваться для этого решением в виде плагина.
Плагин «Theme Customisations» можно скачать из репозитория на GitHub
После загрузки плагина, его необходимо установить в наш WordPress. Сделать это можно при помощи метода Загрузки
После активации плагина, как в самом первом случае, мы не обнаружим в главном меню его раздела — его попросту нет.
Как же тогда работать с плагином? Отвечу — напрямую редактируя код. Попасть в специальный для этих целей раздел можно в меню Инструменты:
Увидеть этот раздел можно под учётной записью администратора. И при первом его посещении WordPress любезно вас предупредит:
Приняв риски, в правом верхнем углу нам нужно выбрать в выпадающем списке наш плагин. После чего нам будут доступны его исходные файлы:
Нас интересует директория custom.
Соответственно, в каждый из файлов мы можем добавлять свой произвольный код:
- CSS — в style.css
- JavaScript — в custom.js
- PHP — functions.php
Вот, например, сниппет, который удаляет логотип WordPress при входе в панель управления. Давайте добавим его в наш файл functions.php
Вот и всё 🙂