Две недели назад команда Гутенберга объявила об открытии обратной связи по блочным виджетам . Ранее в сентябре я уже написал обширный обзор новой системы, но один из членов команды попросил меня поделиться своими мыслями о самой последней итерации. Учитывая, что 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 должен иметь единое место для редактирования областей виджетов / блоков. Пользователям, вероятно, придется какое-то время мириться с некоторыми несоответствиями.
Предполагая, что в этом раунде команда не пытается бросить в последнюю минуту Hail Mary и реализовать полное редактирование блоков в настройщике, можно с уверенностью сказать, что блочные виджеты находятся на пути к успешному дебюту 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, это, вероятно, усугубит проблему.
В традиционной системе и заголовок, и контент виджета заключены в контейнер вместе. Однако, если пользователь добавляет блок заголовка (заголовок виджета) и другой блок (содержимое виджета), каждый блок оборачивается отдельно оболочками виджета темы. Единственный способ исправить сложившуюся ситуацию – это для конечных пользователей добавить блок Group для каждого «виджета», который они хотят, что потребует значительного перевоспитания пользователей WordPress. Это не идеальный сценарий.
Вместо того, чтобы пытаться напрямую «исправить» эту проблему, WordPress не должен ничего делать с выводом. Блоки и традиционные виджеты принципиально отличаются.
Пусть авторы темы берут на себя бразды правления и исследуют возможности. Однако дайте им инструменты для этого, например, поддерживающие шаблоны блоков .