Как разделить рендеринг WP_Widget для front и back-end?

Метод widget, который реализуется для отрисовки содержимого виджета вызывается одинаково для фронта и бек-енда. Но, если вы не утруждаете себя созданием необходимых для рендеринга на бек-енде стилей, то результат не похож, на то что вы увидите на фронте.

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

У класса WP_Widget есть метод WP_Widget::is_preview(), но он почему то не решает задачу, для которой его написали. Возможно, это исправят.

Второй неудачный подход к решению проблемы- это попытка использовать проверку is_admin(), которая должна помочь нам определить, где вызывается рендеринг.

Отладка показывает, что метод widget() для рендеринга вашего виджета вызывается многократно при вызове предпросмотра в админке. И часть этих запросов действительно купируются проверкой is_admin(), но не все.

Вот эти оставшиеся запросы идут через endpoint — /wp-json/wp/…, что мы и будем проверять. В общем виде это выглядит так:

Мало букафф? Читайте есчо !

Относительные ссылки/пути в Wordpress

Февраль 28, 2017 г.

При добавлении картинки в публикацию, WP формирует html код с абсолютным путем. Т.е. мы получаем полный адрес: протокол, домен, путь на сайте и имя файла. Как сделать, чтобы WP подставлял относительные пути, т.е. опускал протокол и домен? Настраиваем ...

Читать

Настройка интеграции payler c woocommerce

Ноябрь 28, 2020 г.

Это более подробная инструкция по настройке плагина. Краткое описание плагина содержит настройку, здесь расскажу о ней подробнее. Подключение к Payler прежде всего может заинтересовать сайты в русском сегменте, т.к. основная валюта, поддерживаемая ...

Читать

Программирование shortcode-s - это просто

Июль 10, 2017 г.

Шоткоды (short codes) - фирменная фишка Wordpress. Они очень популярны, благодаря простоте внедрения новых кодов и легкости использования их редакторами. ...

Читать

WP Plugin Core Settings

Август 20, 2018 г.

В Wordpress много настроек прячется на уровне доступном только веб-разработчику. Т.е. чтобы изменить их, вам нужно хоть немного разбираться в программировании. Это не меняет общей концепции WP как блога, готового к работе из коробки. Но вновь введенные ...

Читать
 

Комментарии к «Как разделить рендеринг WP_Widget для front и back-end?»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: