Публикация в группе: Otshelnik-Fm - мои работы (код, плагины, дополнения, статьи и руководства)

Категории группы: Работаем с Wp-Recall

Это апи должно было выйти в 17-й версии WP-Recall, но по просьбам трудящихся его первая часть вышла уже сейчас.

API Notice вышло с релизом WP-Recall 16.18.0 и в версии 16.18.1 туда были добавлены куки (cookie) - т.е. с этой версии стало возможным закрывать сообщение с уведомлением - на определенное время. Время жизни куки разработчик задает самостоятельно. По умолчанию 30 дней.


Так что за единое APi нотисов пришло в плагин и зачем?

Задача, показать пользователю сообщение - тривиальная задача и достаточно часто требуемая.

В своих дополнениях я заметил что повторяюсь выводя эти сообщения и стилизуя их.
Посмотрев поглубже - увидел что в WP-Recall таких окон с десяток и часто они работают на несогласованном механизме. Соответственно выглядят по разному и всё это нарушает единое целое.

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

Вот что получилось:

 

Это первая итерация уведомлений. Данный механизм будет дополнен в 17-й версии и там же будут все существующие уведомления плагина переведены на это апи.

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


Как добавить уведомления:

Разрабатывая своё дополнение вы можете использовать функцию rcl_get_notice()


Пример 1 - создадим простое уведомление с типом success:

- иконки для типов уведомлений уже предустановлены.

Результат:
 


Пример 2 - создадим предупреждение (warning) с заголовком и своей иконкой:

Результат:

 


Пример 3 - простой (simple) нотис без иконки:

Результат:

 


Пример 4 - блок уведомлений скрываемый на 30 дней щелчком по крестику закрытия.

Часто нотис достаточно показать один раз в несколько дней. Например что не заполнены некоторые поля профиля или есть возможность подписки в группах. И чтобы не быть назойливым - можно их скрывать на нужное количество дней - если пользователь нажал на крестик "закрыть".

- обратите внимание на параметр cookie. Его вы должны передавать уникальным. Именно так будет называться кука.
cookie_time - 2 недели будет жить кука. И на это время скроется сообщение если его пользователь закроет. По умолчанию 30 дней.

text - любой html. я в дополнении друзей уже использую эти уведомления и в одно я сделал полноценной формой: сообщение, две кнопки - удобно.

Результат:

 


Какие планы на развитие api уведомлений?

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

Может быть у вас есть какие идеи?
Озвучивайте их в комментариях - в 17-й версии мы рассмотрим их и самые полезные войдут в ядро. Время еще есть.

Живая демка

5

Автор публикации

не в сети 3 часа

Владимир (Otshelnik-Fm)

3 623
Я завёл себе кота. Время перемен. Скоро
Комментарии: 2043Публикации: 236Регистрация: 27-01-2013Продаж/Покупок: 19069/267