Про вставку PHP кода в WordPress я уже публиковал две заметки, сегодня дополню их еще одним хорошим методом (модуль Code Snippets). При добавлении простых скриптов или вывода информации в сайдбаре можно установить специальный виджет PHP кода, для более сложных решений рекомендуется использовать файл functions.php WordPress темы.
Большинство хаков для системы, которые вы найдете в интернете, реализуется именно вторым вариантом. Для таких случаев могу посоветовать плагин Code Snippets. Кроме простоты работы, он обладает парочкой очень интересных плюсов!
Основная функция модуля — интеграция в админку специального графического интерфейса для работы со сниппетами в вордпресс. Данный механизм аналогичен плагинам — вы можете добавлять, редактировать разные PHP коды, а также активировать и деактивировать их. С технической точки зрения нет никакого отличия при выполнении скриптов, размещенных через плагин Code Snippets или functions.php. Однако пользователям проще и нагляднее править отдельные сниппеты нежели просматривать сотни строк в одном файле функций.
Основные плюсы Code Snippets:
- легкость вставки PHP кода в WordPress через графический интерфейс;
- визуальный редактор с подсветкой синтаксиса;
- сохранность скриптов при смене «темы» (т.к. они хранятся в базе данных);
- возможность включать/выключать некоторые WordPress сниппеты;
- настройка работы скриптов отдельно для бэкенда/фронтенда;
- экспорт/импорт сниппетов;
Скачать модуль можете с официального репозитория с этой страницы либо установить его по названию Code Snippets из админки. На момент написания статьи актуальная версия плагина 2.8.0 имеет более 30 тысяч активаций и почти что максимальную оценку (4.8 из 5-ти, всего 90 голосов). Совместимость: от WP 3.6 до 4.7.
Давайте детально рассмотрим как вставить PHP код в WordPress сайта с помощью данного модуля. После активации в админке появится новый раздел «Snippets»
По умолчанию открывается пункт «All Snippets», где сможете просмотреть все созданные WordPress сниппеты. В каждой строке имеется описание, метки для быстрого поиска, а при наведении появляются ссылки редактирования и активации/деактивации. Для того чтобы вставить PHP код в Wordpress, кликаете по кнопке «Добавить новый» или переходите в пункт меню «Add New». После увидите соответствующую страницу:
Здесь вводите название элемента и вставляете сам PHP код скрипта. Внимание! При этом добавлять теги открытия и закрытия <?php, <? или ?> не нужно! Далее по желанию указываете краткое описание и метки. В самом низу есть настройка «Область» со значениями:
- запускать сниппет везде (админка + сам сайт);
- во фронтенде сайта;
- only run in administration area — только внутри системы;
Это полезно, поскольку некоторые сниппеты в WordPress предназначены только для админки или фронтенда, и опция позволит грузить скрипты лишь там, где они не нужны. После ввода всех данных кликаете по кнопке «Сохранить» либо «Сохранить и активировать». Кстати, в настройках «Settings» доступна автоматической активации сниппетов + есть многие другие параметры (в том числе и по внешнему виду редактора PHP кода).
Что касается экспорта. Сохраняются скрипты для переноса в XML формате, вы можете экспортировать элементы по одному или выделить сразу несколько (как на картинке ниже):
Импорт производится в одноименном пункте меню. После завершения процедуры переходите в All Snippets и активируете нужные WordPress сниппеты. Больше информации по Code Snippets ищите в FAQ на официальной странице модуля.
Напоследок один важный момент. Если в процессе работы у вас возникли проблемы с сайтом, и тот перестал грузиться, можете активировать безопасный режим плагина. Для этого добавьте следующую строку в файл wp-config.php:
define('CODE_SNIPPETS_SAFE_MODE', true);
Затем деактивируйте или удалите тот вордпресс сниппет, из-за которого и случилась ошибка. Еще раз повторюсь — чтобы вставить PHP код в WordPress сайт НЕ нужно добавлять открывающие и закрывающие теги <?php, <? или ?> в редакторе плагина. Если в найденном в интернете примере они есть, копируйте только код между ними. Разумеется, это не касается подобных тегов, когда они используются внутри хака для выделения HTML секций.
В целом, Code Snippets — отличный модуль! Функция импорта может сэкономить массу времени — вы просто загружаете на новый сайт всю свою подборку заранее заготовленных WordPress сниппетов, а потом активируете нужные из них. Подсветка синтаксиса + применение только для бэкенда/фронтенда — тоже весьма полезны. Рекомендую.
Если у вас есть что добавить про Code Snippets и по теме вставки PHP кода и WordPress, пишите в комментариях.
За информацию спасибо: http://wordpressinside.ru