Добавляем виджеты на страницы и в WordPress посты — плагин Amr Shortcode Any Widget
С помощью виджетов в WordPress достаточно удобно работать с разными информационными и функциональными блоками в сайдбаре, футере и т.п. Они реально ускоряют и упрощают процесс настройки сайта. Я уже когда-то рассказывал о добавлении новых виджетов в Вордпресс а, сегодня поведаю каким образом можно встраивать их внутрь страниц и постов блога. Для этого ненужно делать правки в шаблоне, достаточно установить плагин Amr Shortcode Any Widget. Он подходит любой теме и не сложен в настройке, нужно лишь знать некоторые нюансы, о которых я расскажу ниже.
Иногда возникает задача, когда требуется разместить специфическую информацию внутрь контента, например: поиск, список популярных постов, рекламу, перечень категорий блога, внешний RSS фид и т.п. Если это текстовое наполнение, то проблем нет, но в случае нестандартных и динамических элементов вам пригодится Amr Shortcode Any Widget.
Основная функция модуля — добавление виджетов на определенной странице WordPress (в том числе и в постах). Это намного более простая реализация нежели создание отдельного шаблона страницы. Он также может внедрять сразу целый блок виджетов, а не только отдельные объекты.
Процесс установки Amr Shortcode Any Widget вообще не сложный. Скачиваете плагин отсюда либо ставите внутри админки. На данный момент у него 80к загрузок + заявлена поддержка самых последних версий Водпресс (минимальная — 3.6). Оценки также хорошие, работа над ошибками идет, а последний апдейт был 4 недели назад.
После установки в разделе «Настройки» появится пункт «Shortcode any widget». Здесь, во-первых, выводится информация о подключенных виджетах, а во-вторых, собраны инструкции по использованию модуля.
Вставка видежта на страницу WordPress
Первым делом переходим в раздел «Внешний вид» — «Виджеты», где увидите специальную область под названием «Widgets For Shortcodes». В нее вы должны добавлять все те функциональные блоки, с которыми в дальнейшем хотите работать в записях на сайте.
Для каждого элемента доступны все базовые опции и настройки, в том числе заголовок. После сохранения под ним появится шорткод, который следует использовать чтобы вставить виджет в страницу WordPress.
На втором шаге открываете нужную вам заметку и просто добавляете туда соответствующий шоркод (неважно в HTML или текстовом режиме). Обновляете страницу и смотрите результат:
В плагине Amr Shortcode Any Widget есть несколько вариантов шорткодов:
- [do_widget имя_виджета] например [do_widget calendar].
- [do_widget «имя виджета»] — когда название содержит пробел, используются кавычки: [do_widget «tag cloud»].
- [do_widget id=widgetid] — обращение к конкретному объекту по ID (рекомендуется): [do_widget id=search-3].
- [do_widget_area сайдбар_id] — если я правильно понимаю, можно вставлять сразу весь блок виджетов, но лично эту штуку не пробовал.
Лучше всего для добавления видежта на страницу применять вызов по ID — просто копируйте шорткод, который модуль вам подсказывает. Я делал именно так, и все отлично получалось.
Если не работает?
- Первым делом, убедитесь, что вызываете код по ID.
- Во-вторых, разработчики рекомендуют сначала поместить виджет в обычный сайдбар и смотреть будет ли он выводиться там. Вполне вероятно, что ошибка именно в нем.
- В-третьих, можете запустить режим отладки, при котором модуль покажет вам ID используемых элементов (хотя, теоретически, сейчас ID видны в «Настройках» плагина в админке). Ссылка отладки выглядит так:
http://www.ваш_сайт.com/название-страницы/?do_widget_debug |
Параметры шорткодов
В Amr Shortcode Any Widget шорткодах есть парочка опций, позволяющих влиять на результирующий HTML добавленных виджетов на странице. В отличии от плагина стилей оформления виджетов Widget CSS Classes здесь все задается непосредственно в самом коде.
Итак, параметры do_widget:
- name=»nameofwidget» — вставка элемента по имени.
- id=widget-ID — вызов объекта по ID.
- widget_classes=none — удаляет базовые классы, которые система ставит по умолчанию.
- title=false — если не хотите отображать заголовок. Либо можно указать: h1- h5, strong, em, header.
- class=yourclassname — пользовательский класс.
- wrap=htmltag — заменяет первый «оборачивающий» тег на допустимые значения: p, div, section, main, aside.
Например:
[do_widget id=search-3 wrap=div widget_classes=none] [do_widget id=archives-5 title=false] |
Есть также шорткод do_widget_area, который вставляет объекты из определенной области виджетов. Параметры для него:
- widget_area=yourwidgetarea — задаете область темы, если пусто — то выводит элементы из ‘widgets_for_shortcodes’.
- widget_area_class=none — удаление глобальных классов (class) для всей области.
- widget_classes=none — удаление «оборачивающих» классов виджетов.
- class=yourclassname (по умолчанию amr_widget_area) — стиль всего блока, не отдельных объектов.
В случае работы с widget_area важно понимать, что он зависит от используемого названия в теме, поэтому при ее смене, ваши встроенные виджеты на определенных страницах в WordPress наверняка «слетят».
В целом Amr Shortcode Any Widget — отличное решение. С данным модулем я знаком около 4х лет, первую версию обзора сочинял очень давно. Хорошо, что авторы его не забросили и развивают.
Если встречали альтернативные решения для добавления виджетов на страницы и WordPress посты, пишите — интересно узнать.
комментариев 7 к статье “Добавляем виджеты на страницы и в WordPress посты — плагин Amr Shortcode Any Widget”
Блог 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
Вы мне очень помогли, Спасибо!
Ого, не знал, что так можно, супер виджет!
Супер виджет, все сделал за пару миунт.
С помощью Amr Shortcode Any Widget добавляю в посты списки самых актуальных статей в данный момент — помогает для перелинковки))
Марина, интересная идея) причем, если делать через меню, то можно быстро менять список ссылок, не редактируя каждый пост)
Так и не смог понять (я не очень умный), как вызывать эти виджеты по имени, а не по ID. Где именно я должен записать этот параметр name= ? Если можно, объясните по пунктам. На странице widgets.php, если поместить виджет в поле Widgets for shortcodes и раскрыть его, то есть только жестко присвоенный ему ID.
Денис, если честно, плохо помню как там все работает, посмотрите описание модуля на сайте. Как вариант можно добавить виджет в боковую колонку обычным способом, а потом посмотреть в HTML код какие названия/ID в нем используются.