Готовы ли блочные виджеты к внедрению в WordPress 5.6?
Опубликовано: 2020-10-14Две недели назад команда Гутенберга объявила открытый запрос отзывов о блочных виджетах. Ранее в сентябре я уже написал длинный обзор новой системы, но один из членов команды попросил меня поделиться своими мыслями о самой последней итерации. С предстоящей заморозкой WordPress 5.6 Beta 1 всего через неделю, я решил, что не помешает сделать еще одно глубокое погружение.
Для справки, мое последнее тестирование проводится с версией 9.2.0-alpha-172f589 плагина Gutenberg, которая была собрана ранее сегодня. Разработка Gutenberg идет быстро, но все должно быть точно к этому моменту.
В конечном счете, многие проблемы, о которых я указывал более месяца назад, все еще существуют. Тем не менее, команда устранила большинство незначительных проблем, таких как направление стрелок открытия/закрытия для боковых панелей (областей блока) в правильном направлении и обеспечение большего соответствия экрану постредактирования. Пользовательский интерфейс намного более отточен.
Прежде чем углубиться во все проблемы, я хочу ответить на вопрос, который я предлагаю. Да, система виджетов на основе блоков будет готова к выходу WordPress 5.6. Его еще нет, но он находится в точке, где есть четкая финишная черта, до которой можно добраться в ближайшие два месяца.
Я проигнорирую сбой блочных виджетов в настройщике, который появился в Gutenberg 8.9 и был удален в 9.1. Я также не буду обращать внимание на недавнее предложение перестроить экран виджетов для использования Customize API, по крайней мере, на данный момент. Существует множество проблем, которые блочные виджеты представляют для настройщика, и эти проблемы непреодолимы для WordPress 5.6. В долгосрочной перспективе WordPress необходимо иметь единое место для редактирования областей виджетов/блоков. Пользователям, вероятно, придется какое-то время жить с некоторыми несоответствиями.
Предполагая, что команда не попытается в последнюю минуту устроить «Радуйся, Мария» и внедрить полное редактирование блоков в настройщике в этом раунде, можно с уверенностью сказать, что виджеты на основе блоков находятся на пути к успешному дебюту в WordPress 5.6.
Пользовательский опыт

Как пользователю, мне искренне нравится использовать новый экран администрирования виджетов. Открытые области блоков произвольной формы создают неисчислимые возможности для разработки моих сайтов WordPress. Традиционные виджеты были ограничены в возможностях. Пользователи были привязаны к нескольким основным виджетам, возможно, к некоторым виджетам плагинов и тому, что предлагал автор их темы. Однако с блоками пул вариантов расширяется, по крайней мере, в три раза по сравнению с готовыми вариантами (я не считаю блоки встроенного типа по отдельности). Кроме того, блоки предоставляют гораздо более широкий набор вариантов дизайна, чем традиционный виджет.
Для сравнения, традиционные виджеты устарели. Блоки лучше почти во всех отношениях. Тем не менее, с этой новой системой все еще есть проблемы.
Самая большая проблема сейчас заключается в том, что конечные пользователи могут выйти из экрана виджетов, не сохраняя свои изменения. Нет никакого предупреждения, чтобы сообщить им, что вся их работа вот-вот будет потеряна в эфире. Это один из тех элементов уровня OMGBBQ , которые должны быть выполнены до выхода WordPress 5.6.
Одной из приятных, но не необходимых функций будет возможность перетаскивать блоки из одной области блока в другую. В старой системе виджетов пользователи могли перемещать виджеты с одной боковой панели на другую. Текущая альтернатива — скопировать виджет, вставить его в новую область блока и удалить оригинал.
Я также не сторонник отсутствия опции для верхней панели инструментов, которая доступна на экране постредактирования. Одна из причин использования этой панели инструментов заключается в том, что мне не нравится всплывающая панель инструментов по умолчанию для отдельных блоков. Это отвлекает и часто мешает работе.
Устаревшие виджеты, похоже, все еще находятся в стадии разработки. Блок Legacy Widget временами у меня вообще не работал. Затем это волшебным образом начало работать. Однако Гутенберг теперь автоматически добавляет зарегистрированные сторонние виджеты в средство вставки блоков, как если бы они были блоками.


Это создавало свои проблемы. Единственный способ, которым мне удалось заставить виджеты сторонних плагинов работать, — это вставить виджет, сохранить и обновить экран виджетов. В этот момент виджеты появились и стали редактируемыми.
Опыт автора темы
Одна из моих самых больших опасений для авторов тем сейчас заключается в том, что в руководстве по редактору блоков нет никакой документации. Для этого есть достаточно времени, но есть вещи, о которых авторы тем должны знать. Наличие централизованного местоположения, даже пока эта функция находится в стадии разработки, поможет им подготовиться к выпуску 5.6.
Некоторые из этих вопросов, ответы на которые можно найти в различных сообщениях блога Make, должны существовать на специальной странице документации:
- Как тема может отказаться от блочных виджетов?
- Какие есть крючки для добавления пользовательских стилей для экрана виджетов?
- Могут ли темы ориентироваться на определенные стили боковой панели на экране виджетов?
- Можно ли единообразно стилизовать разделы, как традиционные виджеты на интерфейсе?
- Могут ли темы выбрать широкое и полное выравнивание внутри областей блоков, которые можно было бы использовать аналогично области контента публикации?
Вот некоторые из вопросов, на которые я хотел бы получить ответы как бывший автор темы. Я больше не нахожусь в гуще игры по дизайну тем и полагаю, что у тех, кто есть, будет больший список вопросов.
Один из менее очевидных фрагментов документации должен быть сосредоточен на том, как обращаться с запасными вариантами или виджетами по умолчанию. Традиционно темы, которые должны отображать набор виджетов по умолчанию, проверяли, есть ли виджеты на боковой панели, и возвращались к использованию the_widget() для вывода одного или нескольких значений по умолчанию. Хотя авторы тем все еще могут это делать, мы должны начать постепенно переводить их на блочную систему.
Должны ли авторы тем копировать/вставлять блокировку HTML в качестве запасного варианта? Будет ли система начального контента лучше для этого, и может ли контент начального виджета обрабатывать блоки? Каков рекомендуемый метод резервного копирования виджетов в WordPress 5.6?
Все еще остается нерешенным вопрос о том, как авторы тем должны обрабатывать традиционный HTML-оболочку виджета и заголовка виджета в новой блочной парадигме. Один патч, добавленный после выпуска Gutenberg 9.1, оборачивает каждый блок верхнего уровня оболочкой виджета. Если это появится в выпуске 9.2, это, вероятно, усугубит проблему.
В традиционной системе и заголовок виджета, и содержимое помещаются в контейнер вместе. Однако, если пользователь добавляет блок «Заголовок» (название виджета) и другой блок (содержимое виджета), каждый блок отдельно оборачивается оболочками виджетов темы. Единственный способ исправить ситуацию в ее нынешнем виде — это добавление конечными пользователями блока группы для каждого «виджета», который им нужен, что потребует значительного переобучения пользователей WordPress. Это не идеальный сценарий.

Вместо того, чтобы пытаться напрямую «исправить» эту проблему, WordPress не должен ничего делать с выводом. Блоки и традиционные виджеты принципиально разные.
Пусть авторы темы возьмут бразды правления в свои руки и исследуют возможности. Тем не менее, дайте им инструменты для этого, такие как поддержка шаблонов блоков.
