
Не так давно я добавил сюда функцию создания кнопок для открытия модального окна без плагинов в WordPress. Вчера GenerateBlocks в обновлении 2.3.0 своей Pro-версии добавил эту опцию, гораздо более гибкую и с большим количеством возможностей, которые могут сэкономить вам несколько плагинов.
Это накладные панели (не знаю, правильно ли я перевел "накладные панели") с условиями.
Оверлейные панели GenerateBlocks Pro 2.3 позволяют добавлять любой контент к интерактивным элементам, таким как всплывающие окна, выдвижные окна, модальные и немодальные окна, всплывающие подсказки, панели вне холста и даже мегаменю.
Хотя GenerateBlocks и GeneratePress известны тем, что обеспечивают чистый, легкий и оптимизированный код, мне еще предстоит проанализировать влияние этих панелей на DOM, сравнить количество элементов и глубину, которую они добавляют, чтобы понять, в каких случаях лучше использовать этот новый инструмент или просто HTML и CSS, жертвуя интересными возможностями условных правил.
GenerateBlocks не добавляет новый блок в свою коллекцию из 12. В админке мы увидим две новые опции: Overlay Panels и Conditions.

Чтобы начать создавать первый модал, всплывающее окно или всплывающую подсказку, щелкните на Overlay Panels и справа найдите параметры его настройки.
Теперь вы можете протестировать его функции, создав любой контент внутри контейнера GenerateBlocks (или другого элемента), не изучая при этом параметры конфигурации Conditions.

Доступны триггеры (действия или обстоятельства, которые приведут в действие вещь с отображаемым содержимым):
- Клик. Активируется содержимое, которое будет отображаться при нажатии на кнопку, изображение, ссылку и т. д.
- При наведении активируется, когда пользователь наводит курсор на элемент.
- Щелкните или наведите курсор. Комбинируйте щелчок и наведение курсора.
- Намерение выйти: отображается, когда пользователь пытается покинуть страницу и перемещает указатель в верхнюю часть браузера.
- Процентная прокрутка: отображение после того, как пользователь прокрутит страницу вниз до указанного процента.
- Задержка времени: появляется через заданное время.
- Пользовательские события запускаются при определенных действиях, например, при добавлении товара в корзину WooCommerce (`wc-blocks_added_to_cart`).
Затем вы можете взглянуть на Условия и опробовать возможности. Хотя у меня еще не было времени использовать все комбинации, то немногое, что я успел опробовать, кажется очень полезным.

Если триггеры предлагают хорошую палитру вариантов, то условия значительно расширяют их возможности.
Условия могут быть основаны на широком спектре параметров, что обеспечивает детальный контроль:
- Автор: показывает наложения на контент определенных авторов.
- Cookie: показывать или скрывать оверлеи в зависимости от наличия или значения cookies.
- Дата и время. Планирование наложений на определенные даты, время или повторяющиеся события.
- Устройство - показывает или скрывает наложения на основе настольного, планшетного или мобильного устройства.
- Язык: сегментируйте пользователей в зависимости от языка вашей страницы.
- Местоположение: отображение наложений на определенных страницах, постах или файлах. Местоположение можно настроить для всего сайта или на уровне детализации до страницы 404 или подстраниц.
- Пользовательские поляпостов можно использовать для запуска оверлеев (например, отображать оверлей для постов с определенным значением метаданных).
- Параметр запроса - целевые URL-адреса с определенными строками запроса (например, `?utm_source=newsletter`). Это очень удобно, если вы запускаете рекламу и хотите показывать только предложения, основанные на определенных параметрах запроса для конкретной кампании.
- Referrer: нацеливание на посетителей, пришедших с определенных доменов или URL.
- Параметры сайта - настройка параметров сайта WordPress в соответствии с условиями.
- Метаданные пользователя, персонализация в соответствии с данными профиля пользователя.
- Роль пользователя: показывать содержимое зарегистрированным пользователям, администраторам, подписчикам или гостям.
Список остальных опций вы можете подробно найти в этом посте или в этом руководстве для панелей и в этом для условий с документацией, примерами, советами и скриншотами.
А если вы предпочитаете, чтобы кто-то наглядно объяснил, как начать работу, Кайл из The Admin Bar уже сделал это в данном видео.
Я все еще думаю, что, хотя на форуме поддержки они предлагают очень хорошую службу поддержки и очень полезные ответы на любые вопросы, кривая обучения для использования многочисленных возможностей GenerateBlocks все еще немного крутая. Тем более для новичков или тех, кто привык к таким конструкторам, как Elementor. Тем не менее, я бы не променял GB ни на один билдер или коллекцию блоков, потому что его развитие, хотя и медленное, кажется мне правильным.