Plugin info

Total downloads: 624
Active installs: 10
Total reviews: 0
Average rating: 0
Support threads opened: 0
Support threads resolved: 0 (0%)
Available in: 1 language(s)
Contributors: 1
Last updated: 7/27/2025 (157 days ago)
Added to WordPress: 5/9/2025 (0 years old)
Minimum WordPress version: 5.0
Tested up to WordPress version: 6.8.3
Minimum PHP version: f

Maintenance & Compatibility

Maintenance score

Maintained • Last updated 157 days ago

50/100

Is Emberly Popups abandoned?

Likely maintained (last update 157 days ago).

Compatibility

Requires WordPress: 5.0
Tested up to: 6.8.3
Requires PHP: f

Similar & Alternatives

Explore plugins with similar tags, and compare key metrics like downloads, ratings, updates, support, and WP/PHP compatibility.

Popup Box – Easily Create WordPress Popups
Rating 5.0/5 (11 reviews)Active installs 5,000
Shadowbox JS
Rating 4.6/5 (9 reviews)Active installs 2,000
Simplelightbox
Rating 5.0/5 (11 reviews)Active installs 1,000
CTC Masonry Gallery 🎨
Rating 5.0/5 (3 reviews)Active installs 1,000
Cookielay
Rating 5.0/5 (3 reviews)Active installs 900
Page Takeover
Rating 4.2/5 (9 reviews)Active installs 400

Description

Emberly Popups is a simple PHP function that generates ARIA‑compliant modal popups. Great for newsletters, surveys, announcements, or any call‑to‑action:

  • Auto‑open after a configurable delay
  • Cookie‑ or session‑based “show once” control
  • Repeat interval (milliseconds) between popups
  • Shortcode support inside popup content
  • Adjustable width and padding
  • Accessible markup with proper ARIA roles

Usage

PHP 8+ (named arguments)

“`php
emberly_popup(
title : ‘Welcome!’,
content : ‘

Thanks for visiting our site. Don’t miss our latest offers!

‘,
id : ‘welcome-popup’,
width : ’50rem’,
padding : ‘3rem’,
echo : true,
output_shortcodes: true,
auto_open : true,
delay : 2000,
show_once : false,
persistence_method: ‘session’,
show_interval_ms : 1800000 // 30 minutes
);

PHP 7 & earlier (ordered arguments)

```php
emberly_popup(
'', // $title
'

Thanks for visiting our site. Don't miss our latest offers!

',
'category-survey-popup', // $id
'50rem', // $width
'3rem', // $padding
true, // $echo
true, // $output_shortcodes
true, // $auto_open
2000, // $delay
false, // $show_once
'session', // $persistence_method
1800000 // $show_interval_ms
);

Manual triggers

Anywhere in your markup, add:
html
Open Welcome Popup

The em-popup-trigger-id value must match the $id you set in emberly_popup().

Parameters

Parameter
Type
Default
Description

title
string

Popup heading text.

content
string

HTML for the popup’s body.

id
string

Unique popup identifier (required for cookies/sessions & triggers).

width
string
’60rem’
CSS max-width for the popup container.

padding
string
‘3rem’
Inner padding inside the popup.

echo
bool
true
Echo the markup immediately (false to return as string).

output_shortcodes
bool
false
Process WordPress shortcodes in content.

auto_open
bool
false
Automatically open after delay ms.

delay
int
0
Milliseconds to wait before auto-open.

show_once
bool
false
If true, shows only once per session/cookie period.

persistence_method
string
‘cookie’
Where to store “shown” flag: ‘cookie’ or ‘session’.

show_interval_ms
int
0
Minimum interval (ms) before showing again. 0 disables repeats.

debug
bool
false
Log internal events to browser console (load, open, cookies, scroll lock).

Debugging

Add debug: true (PHP 8+) or append true as the 13th argument (PHP 7) to enable console logging:

`php

// PHP 8+ example
emberly_popup(
title : ‘Debug Popup’,
content: ‘

Debugging is on!

‘,
id : ‘debug-popup’,
debug : true
);
`

Installation

  1. Copy the emberly_popup() function into your theme’s functions.php or a custom plugin.
  2. Enqueue or include the popup’s CSS and JS assets.
  3. Ensure assets/icons/close.svg exists (used for the close button).
  4. Call emberly_popup() anywhere in your PHP templates.

Frequently Asked Questions

What if I don’t set an ID?

An ID is required for cookies/sessions and manual triggers; omit at your own risk.

Can I use shortcodes in my popup?

Yes—set output_shortcodes to true.

Review feed

No reviews available

Screenshots

No screenshots available

Changelog

1.3

  • Fixed minor CSS selector issue in nested themes.
  • Added debug parameter to PHP 7 ordered args example.
  • Improved README formatting for WP.org.
  • Fixed trigger logging order. Now logs triggers before content by moving the trigger handler up to the body.
  • Added compatibility to override smooth scrolling when closing a popup.

1.2

  • Added debug logging support.
  • Support for PHP 8 named arguments.

1.0

  • Initial public release.