Hypernotes: плагин для личных заметок в WordPress

Элла Ван Дёрп (Ella van Durpe), работающая на Automattic, на днях выпустила плагин для создания заметок. Hypernotes – это простой произвольный тип данных, который позволяет пользователям делать личные заметки или вести логи.

Я уже сталкивался с подобными плагинами ранее. Я даже разрабатывал подобное решение год назад, но отказался от него в пользу простого Markdown-проекта в приватном репозитории.

Уникальность Hypernotes заключается в том, что он работает с «папками», функционирующими как рубрики. У каждой папки имеется свой собственный пункт в подменю в разделе Notes.

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

Код плагина достаточно простой; идея гениальна. Это тот вид нестандартного мышления, который мне нравится видеть у разработчиков плагинов.

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

В целом же плагин, если рассматривать его как приложение для заметок, работает великолепно.

В описании плагина есть следующая сноска, которая объясняет, насколько приватными будут заметки для пользователей:

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

Плагин Hypernotes гарантирует, что ни одна заметка не будет случайно выведена на всеобщее обозрение. Как видно из его кода, все заметки автоматически переводятся в статус «private». Тип записей плагина не может быть публично запрошен где-либо во фронтэнде.

Стоит также сказать, что плагин не создает произвольные возможности (права доступа) для своего типа записей и таксономии. Любой зарегистрированный пользователь на сайте с соответствующими правами редактирования записей может получить доступ к заметкам других пользователей в бэкэнде. Это верно, к примеру, для пользователей с ролью Editor (Редактор).

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

Я столкнулся с одной нетривиальной проблемой, когда начал тестировать Hypernotes. В какой-то момент я обнаружил, что мой сайт сломался. Обычно это происходит из-за патчей к плагину Gutenberg и его регулярных обновлений. Но в итоге Gutenberg был не виноват. Я потратил полчаса на то, чтобы понять, почему мои стили темы не отображаются в заметках. И в конце концов решение было найдено.

Hypernotes отключает все стили редактора тем. Исчезла красивая типографика моей текущей темы, которая выглядела бы привлекательно при использовании в заметках.

Эту проблему оказалось легко решить — с помощью нескольких строк кода. Если бы я хотел сохранить несколько цитат в качестве личных заметок, то делал бы это как минимум стильно:

Плагин также пытается отключить wide/full выравнивание и размеры шрифтов редактора тем. Код, который он использует, работает только для традиционных WordPress-тем, но не для блочных тем, т.к. в них используется несколько иной механизм регистрации этих опций. Это тоже усложнило поиск проблемы. Все остальное в моей теме работало, исключением стали только произвольные стили редактора.

Я понимаю, почему Элла отказалась от поддержки этих функций. Темы позволяют стилизовать фронтэнд сайта, а Hypernotes – это решение чисто для бэкэнда. Однако я все же предпочел бы вариант, когда пользователю дается контроль над тем, что именно отключается. Некоторые стили редактора тем хорошо сочетаются с плагином.

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

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

Если говорить про версию 1.0, то я поклонник простоты. Более того, меня впечатлила идея с папками для заметок. Мне не терпится посмотреть, как этот плагин будет развиваться в следующих версиях. Взял его себе на карандаш.

Источник: wptavern.com

Блог про WordPress
Добавить комментарий

Получать новые комментарии по электронной почте.