Огромный сборник статей от WPTec для начинающих

Мнение

Руководитель проекта New Packages, группа проверки темы запускает решение для уведомлений администратора

В рамках плана группы проверки тем WordPress по пресечению навязчивых уведомлений администраторов команда опубликовала версию 1.0 своего пакета уведомлений администратора для общественности. Новый пакет предоставляет авторам тем стандартный API для отображения уведомлений администратора.

Ари Статопулос возглавил проект пакетов в конце августа. Статопулос является основным разработчиком и создателем высоко оцененного фреймворка настройщика Kirki , который в настоящее время имеет более 300 000 активных установок в виде плагина. Однако фреймворк также доступен в виде отдельных модулей, которые авторы тем могут объединять в свои темы.

Пакет Admin Notices – третий пакет, созданный командой, и первый пакет, который возглавил Статопулос.

Добавить простое уведомление администратора в WordPress относительно легко для большинства разработчиков. Однако обработка таких функций, как постоянные запрещенные действия, является более сложной. Пакет Admin Notices справляется с этим из коробки.

Некоторые опции пакета включают возможность:

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

^

На приведенном выше снимке экрана показан пример вывода основного уведомления администратора для четырех доступных типов. Действие отклонения обрабатывается JavaScript и работает без перезагрузки страницы. После закрытия пользователи больше не будут видеть уведомление.

«Я думаю, что самым сложным было решить, насколько ограничительными мы хотели, чтобы он был», – сказал Статопулос о проблемах, связанных с созданием этого пакета. Пакет ограничивает авторов тем абзацами, ссылками, полужирным шрифтом и курсивом в версии 1.0. Это не оставляет много места для экспериментов, но цель – стандартизация. Чем больше разрешено элементов, тем больше вероятность, что инструмент не решит задачу команды по сохранению ненавязчивости уведомлений администратора.

Уведомления пользователей – сложная проблема

WordPress не предоставляет формального API для уведомлений пользователей. Однако он предоставляет стандартный набор классов CSS и крючок для прикрепления уведомлений. В Кодексе также есть несколько примеров передовой практики . Отсутствие формального API оставило авторов тем и плагинов наедине с собой. Пользователи пострадали из-за сильно различающихся реализаций и распространенных проблем, таких как запрещенная реклама .

Тим Хенгевельд предложил API-интерфейс Центра уведомлений на Trac в 2018 году. В тикете ведется здоровое, постоянное обсуждение и есть некоторые предложения пользовательского интерфейса. Предложение по-прежнему помечено как «Ожидает рассмотрения», и маловероятно, что оно будет выпущено раньше, чем WordPress 5.4 или новее.

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

Хотя пакет TRT не решает всех проблем, связанных с уведомлениями пользователей, он помогает ограничить некоторый краткосрочный ущерб.

Другие пакеты в разработке

В настоящее время создаются другие пакеты, а другие находятся на стадии планирования.

Цель всего проекта – предоставить авторам тем подключаемые модули, которые они могут связать со своими темами. Все пакеты написаны на PHP 5.6+ в надежде подтолкнуть авторов тем к более современным методам кодирования (условно говоря, поскольку PHP 7.4 будет выпущен в этом году). Это также поможет упростить процесс проверки, если больше авторов тем примут пакеты вместо того, чтобы создавать все собственными силами.

«Если мы создадим пакеты для наиболее востребованных вещей, мы будем надеяться, что мы дадим людям возможность легче создавать качественные темы», – пояснил Статопулос. «Я думаю о пакетах как о строительных блоках для тем».

Статопулос работает над настройкой элемента управления для выбора цвета с альфа-прозрачностью, который может быть выпущен уже на следующей неделе. Это предоставит пользователям тем больше контроля над тем, как их цвета отображаются для тем, которые его реализуют.

«После того, как мы создадим основы, я хочу сосредоточиться на пакетах, которые улучшат безопасность и конфиденциальность в темах – двух областях, где темы не справляются», – сказал он. «Это помогло бы многим людям, и это, в конечном счете, наша цель».

За последние несколько лет авторы тем привыкли устанавливать пакеты JavaScript и CSS через NPM. Однако их использование Composer в качестве менеджера зависимостей PHP задерживается. Отчасти это может быть связано с предыдущим нежеланием WordPress повысить свою минимальную версию PHP. Многие пакеты, доступные в Packagist, основном репозитории Composer, не работают со старыми версиями PHP. Недавний переход WordPress на PHP 5.6+ и планы по переходу на 7+ в будущем могут подтолкнуть больше авторов тем к рассмотрению управления зависимостями PHP.

TRT имеет учетную запись Packagist и сделал все свои пакеты доступными для установки через Composer.

Нет требований к использованию пакетов

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

«Есть веские причины для принудительного использования этих пакетов, но это не может произойти в одночасье», – сказал Статопулос. «Мы хотим, чтобы темы в репозитории имели какие-то стандарты, это не может быть дикий запад. Качество кода должно улучшиться. Эти пакеты – способ облегчить жизнь людям и в конечном итоге сэкономить время для всех ».

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

Привлечение авторов тем – одна из областей, где команда боролась. Участие в пакетах может принести пользу всему сообществу. «Большинство людей даже не знают о них, поскольку они нигде не указаны», – сказал Статопулос. «Авторы тем в настоящее время должны их искать, и для того, чтобы искать их, кто-то должен сказать им, что они существуют (чего не происходит)». Одним из следующих шагов будет получение пакетов, перечисленных в документации TRT.

Совместная работа над общими функциями темы может стать связующим звеном между авторами темы и рецензентами, позволяя им вместе решать проблемы.

Примечание. Автор этой статьи участвовал в составлении первоначального предложения пакетов темы, а разработчик – в его первоначальных выпусках пакетов.

 

Рекомендуем прочитать
Мнение

Плагин Delete Me для WordPress помогает владельцам веб-сайтов предоставить право на забвение GDPR

Мнение

Команда Gutenberg наращивает юзабилити-тестирование в WordCamp US

Мнение

Плагин распространителя теперь в бета-версии: новое решение для синдикации контента WordPress от 10up

Мнение

Gutenberg 1.8 добавляет большую расширяемость для разработчиков плагинов

Подпишитесь на рассылку
и будьте в курсе новостей Wordpress

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *