Вставка PHP кода в WordPress через виджеты
В wordpress, по сути, существует 2 разных подхода для добавления функциональных элементов в сайдбар или футер блога — это использование виджетов, а также добавления php кода и специальных wordpress функций в файлы шаблона. Первый вариант удобнее для пользователей без сильной технической подготовки, весьма нагляден и прост, второй — разработчикам, которые хотят управлять всеми нюансами отображаемой информации. Но иногда возникает задача, когда нужно эти 2 подхода совместить. Самый простой пример это когда вы создаете сайт под заказчика — он должен получить работающую админку с некоторыми несложными (!) опциями для управления проектом. Вы же не будете его вводить в курс дела по различным вордпресс функциям, какие параметры там есть как работают и т.п. В таком случае, без виджетов не обойтись.
Обновление 19.06.2019: По последним данным виджет PHP Code не обновлялся уже года два и более, поэтому как альтернативу советую обратить внимание на продвинутый Enhanced Text Widget где кроме PHP работает с JavaScript, HTML/CSS и шорткодами — универсальная штука!
В одном из прошлых постов я уже рассказывал как создать блок виджетов в шаблоне wordpress процесс это не такой сложный, как может показаться на первый взгляд. Хотя, в принципе, почти все wordpress темы уже изначально поддерживают виджеты. Второй нюанс в данном вопросе — не все задачи можно решить с помощью стандартного набора видежтов, которые имеют лишь базовые настройки — заголовок и пару опций. В то время как WP предоставляет куда больший функционал, что иногда приходится использовать. Взять хотя бы виджет «Свежие записи» и сравнить его с функцией wp_get_archives — виджет позволят выбрать только количество ссылок в блоке, ни тебе сортировки, оформления, типа архива. Виджеты удобные, но зачастую предоставляют мало опций. Помогает в этом деле — добавление PHP кода непосредственно через виджеты с помощью плагина PHP Code Widget.
Плагин PHP Code Widget
Данный плагин добавляет в wordpress новый тип виджета, который очень похож на стандартный текстовый блок. Называется он PHP Code. Скачать плагин можно здесь, установка стандартная — копируете файл плагина в /wp-content/plugins/, активируете в админке, после чего на странице виджетов появится новый элемент.
Дабы добавить php код просто перетаскиваете виджет в нужное место панели вижетов шаблона и в текстовом поле пишите свой php код. Важно при этом использовать правильный синтаксис дабы не возникало ошибок, а интерпретатор воспринял код как нужно! Как видите, плагин предельно прост в использовании, протестирован мною на парочке сайтов, где отлично работает.
Что же касается плагин PHP Code Widget, то сам принцип добавления кода через виджеты поможет пользователю полностью перейти на работу с шаблоном через механизм виджетов. Даже, если пользователь не слишком силен в технических аспектах, порядок отключения или изменения определенных элементов шаблона будет намного проще чем поиск нужного участка кода в файлах шаблона. С помощью такого подхода можно также легко работать с уже созданными работающими сайтами, которые поддерживают вижджеты и где вам нужно внести какие-то изменения. Например добавить код sape в wordpress — через виджеты пользователь сможет понять где и что у него отображается. Или вам заказали разработку каких-то изменений на сайте, а внедрение их в файлы шаблона не так просто реализовать — допустим имеется блок с табами, где в одну из закладок нужно вывести информацию — весьма нецелесообразно удалять плагины табов, потом добавлять их поддержку вручную через шаблон, а дальше уже вставлять код требуемых изменений. Во много раз проще установить плагин PHP Code Widget и добавить информацию в табы через виджеты.
В общем, нельзя сказать, что необходимость добавления PHP кода через виджеты есть всегда, но иногда такая задача, как видите, может возникнуть. В этом случае PHP Code Widget поможет решить все вопросы легко и быстро. Простой такой, но весьма полезный модуль.
P.S. Заказывать книги в интернете стало еще проще — специальный книжный интернет магазин онлайн имеет широкий выбор товаров, доступные цены и доставку прямо к вам домой.
Одесские автомеханики могут все, если нужны стартеры и автомобильные генераторы в Одессе купить или заказать в вместе с установкой — нет проблем, обращайтесь в Starter.od.ua.
комментариев 16 к статье “Вставка PHP кода в WordPress через виджеты”
Блог Wordpress Inside поможет вам научиться работать в вордпресс, закрепить и расширить имеющиеся знания. Плагины и шаблоны, разные хаки и функции wp, оптимизация и безопасность системы – все это и намного больше вы сможете найти на страницах нашего проекта!
Если хотите быстро и оперативно получать последние новости и статьи, то рекомендуем подписаться на обновления блога:
- Як сховати відсутні товари в Woocommerce шорткодах та схожих товарах
- Сервіс AdMaven + плагін для монетизації трафіка на WordPress сайтах
- Плагіни для створення стрічки новин з біжучим рядком в WordPress
- Як змінити розміщення кнопки оформлення замовлення в WooCommerce
- Плагін WHWS Display In Stock Products First – відображення товарів в наявності першими
- Підписка MonsterONE: чи варто використовувати цей сервіс у 2023 році? (+5 продуктів, які треба скачати в першу чергу)
- Онлайн генератор ссылок на мессенджеры для WordPress и не только
- WooCommerce (46)
- Безопасность (12)
- Видео (6)
- Виджеты (28)
- Возможности (141)
- Вопрос-ответ (6)
- Начинающим (52)
- Новости (46)
- Оптимизация (23)
- Плагины (246)
- Сервисы (87)
- Хаки и секреты (87)
- Шаблоны (45)
- Дизайн Мания - о веб-дизайне и не только.
- Tod's Blog - все про заработок онлайн.
- Вебдванольные заметки - обзоры веб-сервисов.
- Советы по выбору холодильника LG с технологией No Frost
- Зачем нужны Wi-Fi ретрансляторы и как выбрать подходящую модель
- Введение в онлайн-казино Slotor777: многообразие игр и привлекательные бонусы
- Необходимость использования облачного хранилища в наше время, что важно и как выгодно?
- Спрощення процесу звітності за допомогою програми BAS Бухгалтерія
- Технологія підключення інтернету GPON та її переваги
- За що гравці найбільше цінують Lineage 2
- Для каких проектов нужна аренда виртуального сервера и что такое VPS
А как быть если в сайдбаре некорректно отображается код javascript. Например категорически отказываются вставать по центру поля в форме подписки. В какую сторону копать? Различные плагины для вставки кода уже пробовал.
Алексей, судя по описанию проблемы это вопрос не к javascript, а к оформлению CSS стилями полей формы. Я бы копал в этом направлении.
Спасибо, поставил себе на блог. Давно искал подобное. Думаю одним из главных преимуществ плагина является что можно самому вставить код sape и делить ссылки по блокам…да и вообще удобный плагин!
Судя по всему — этот плагин, то что я искал. Всё думал над задачей, как совместить несколько виджетов в сайдбаре в один с переключением java скриптом… Переключение работает хорошо, но вот как вызвать несколько виджетов — был вопрос, теперь вызову… :)
Благодарю автора за полезную статью!
Очень хороший и нужный плагин. Единственный вопрос остается насчет безопасности выполнения PHP-кода в виджете. Впрочем, лично я сейчас другого выхода не вижу, так что установил — и доволен.
ZeroXor, ну, безопасность вообще сложный вопрос касаемо любого модуля, я рассуждал логически — виджеты могу править только я, поэтому и переживать насчет вредоносного кода сильно не стоит.
вот я добавляю виджет «рубрики» второй раз но я хочу уже там разместить отдельные рубрики,другие,но мне автоматически при добавлении второго виджета все рубрики из первого виджета копируются,как можно сделать так чтоб сделать два виджета на сайте с разными в них рубриками?помогите плз никто подсказать пока толковое ничего не может!
артем, виджет «рубрики» выводит одно и то же. чтобы выводить разные ссылки нужно либо прописать все вручную через html либо создать меню и выводить его.
я создал меню и через него все вывел,все было так просто на самом деле:)
Спасибо, только что установил — работает :)
Установил плагин но виджет не работает. Вставляю свой код PHP Где должен показываться мой виджет пишет:
Fatal error: Call to undefined function codbanner() in /home/mohish12/domains/web-zarabotok.info/public_html/wp-content/plugins/php-code-widget/execphp.php(27) : eval()’d code on line 1
Что мне с этим делать?
Иван, версия плагина и системы вордпресс совместимы? То есть нужно проверить требования плагина к WP. Возможно, с момента обзора плагин слегка устарел. Еще варианты — конфликт с другим плагином или в шаблоне. Для теста нужно временно отключать некоторые из плагинов и сменить тему. Если все это не поможет, то глюк в самом модуле.
У меня стоит подобный плагин в виджите Advanced Text Widget. Но при установки Адсенса весь сайтбар съезжает. Так что мне стоит вместо него установить рекомендуемый вами PHP Code Widget, так что ли?
Пару лет назад эта статья выручила меня, помогла реализовать задуманное на одном сайте. Спасибо!) А вернулся я потому что уже долго бьюсь с другой похожей проблемой. Может вы знаете ответ. Как вставить php код внутри содержимого записи или страницы? Только не с помощью создания нового шаблона.
Петр, сегодня-завтра займусь этим вопросом и отпишусь.
Петр, есть в WordPress модуль добавления виджетов в страницы и посты — Amr Shortcode Any Widget. С обычными виджетами справляется отлично, не знаю получится ли с PHP кодом, но советую вам пробовать.