Более гибкое управление боковой панелью и виджетами

Я бы хотел иметь плагин для гибкого управления боковой панелью / виджетами. Фактически, я хочу дать пользователю возможность выбрать, какая боковая панель должна отображаться на странице / сообщении.

Я знаю, что есть много боковых плагинов. К сожалению, я не нашел того, который охватывает все мои пожелания. Поэтому я хотел бы закодировать это самостоятельно. Какая из следующих возможностей вы найдете, самая лучшая и самая гибкая? Или у вас есть другие подходы?

максимальные возможности

  1. Hardcode register_sidebar вызывает плагин / functions.php и добавляет обмен для post_edit.php , post_new.php .

    • Не такая гибкая. Если у пользователя есть 100 страниц, и каждая страница должна иметь другую боковую панель, пользователь должен зарегистрировать дополнительные боковые панели вручную.
  2. То же, что и Nr.1, но используйте общий шаблон боковой панели с условными тегами для отображения виджетов. Мы могли бы также использовать плагин Widget Logic для более детальной фильтрации в бэкэнд.

    • Хорошо для программиста или опытного пользователя WordPress, но не для обычного пользователя. Условные теги должны отображаться дружественным образом. Также is_page(id) может создавать проблемы на многоязычных сайтах, где записи другого языка хранятся с другим идентификатором.
  3. Тип пользовательских сообщений с гибкими боковыми панелями . Каждое сообщение в этом CPT используется в общем шаблоне боковой панели для отображения данного содержимого. Боковая панель также выбирается внутри пользовательского метабокса. Пользователь может добавлять контент на боковую панель с помощью редактора WYSIWYG по умолчанию, который является большим плюсом.

    • Не настоящая боковая панель. Поэтому виджеты больше не могут быть добавлены на вкладке widgets-subpage на панели администратора. Мы должны создать собственный обмен для назначений виджета.
  4. Измените закладку widgets-subpage на панели администратора, чтобы создать / зарегистрировать свои собственные боковые панели в WordPress. Также создайте общий виджет с редактором WYSIWYG по умолчанию. Содержимое с вложениями можно легко добавить в виджет и окунуться в новую созданную боковую панель. Затем пользователь может выбрать эту боковую панель с раскрывающимся полем в пользовательском метабоксе в экранах администратора почты / страницы. Чтобы отобразить боковую панель, нам нужен также общий шаблон боковой панели.

Вывод

С моей точки зрения, Nr.4 должен сделать трюк. Есть ли другие возможности? Или это уже существует в плагине?

Спасибо за ваш ответ

Solutions Collecting From Web of "Более гибкое управление боковой панелью и виджетами"

Существует расширение под названием «Логика виджетов». Он добавляет поле каждому боковому виджету в разделе администратора, где вы можете добавить фрагмент кода php, который вы можете использовать для архивирования, что вам, скорее всего, понадобится.

Это немного громоздко, но работает. Например, вы упомянули, что для многоязычного сайта вы все равно можете использовать «is_page», так как вы также можете передать массив для функции, например: is_page (array (94,71,3)) .. С логическими операторами (и / или / not / xor) в сочетании с вами можно архивировать любую комбинацию.