Title: BannerMonster
Author: Marco De Sangro
Published: <strong>Сентябрь 4, 2026-ж.</strong>
Last modified: Сентябрь 4, 2026-ж.

---

Плагиндерди издөө

![](https://ps.w.org/bannermonster/assets/banner-772x250.png?rev=3681260)

![](https://ps.w.org/bannermonster/assets/icon-256x256.png?rev=3681260)

# BannerMonster

 Автору [Marco De Sangro](https://profiles.wordpress.org/ideagrafica/)

[Жүктөө](https://downloads.wordpress.org/plugin/bannermonster.1.6.0.zip)

 * [Кенен маалымат](https://kir.wordpress.org/plugins/bannermonster/#description)
 * [Сын-пикирлер](https://kir.wordpress.org/plugins/bannermonster/#reviews)
 *  [Орнотуу](https://kir.wordpress.org/plugins/bannermonster/#installation)
 * [Development](https://kir.wordpress.org/plugins/bannermonster/#developers)

 [Колдоо](https://wordpress.org/support/plugin/bannermonster/)

## Сүрөттөө

BannerMonster lets you create custom banners and popups for your WordPress site 
with advanced targeting rules.

**Types:**

 * Top banner (fixed bar at top)
 * Bottom banner (fixed bar at bottom)
 * Center popup
 * Bottom-right popup
 * Bottom-left popup

**Display rules:**

 * All pages
 * All posts
 * All custom post types
 * Specific pages, posts or CPTs
 * Specific URLs (partial match, case-insensitive, trailing-slash tolerant)
 * Taxonomies (categories, tags, custom taxonomies)

**Triggers:**

 * Immediate
 * After X seconds
 * Exit intent (mouse leaves viewport)
 * At X% page scroll

**Reappearance control:**

 * Set how many minutes after closing a banner should reappear
 * 0 = never reappear after closing
 * Close state stored in browser localStorage, persists across sessions

**Customization:**

 * Background, text and border colors with color pickers
 * Padding, font size, border width
 * Width (%) and max-width (px) for popups
 * Custom CSS classes per banner
 * Close button with configurable persistence
 * Overlay for popups with optional close-on-click

**Accessibility (WCAG 2.2):**

 * Native HTML `<dialog>` element for popups — focus trap, Escape key, backdrop 
   managed by the browser
 * `role="dialog"` and `aria-modal="true"` applied automatically
 * `aria-label` on each dialog using the banner title
 * Keyboard-only navigation: Escape to close, Tab cycling trapped inside popup
 * Backdrop click closes popup (configurable)
 * `:focus-visible` styling for keyboard users
 * Screen reader compatible (VoiceOver, NVDA, JAWS)

**Debug mode:**

 * Append ?bannermonster_debug=1 to any URL to bypass localStorage persistence
 * Banner appears on every page load regardless of close state

**Zero dependencies** on the frontend. jQuery is only used in the admin area.

**Performance:**

 * Frontend assets loaded only when active banners exist on the page
 * Vanilla JavaScript, no frameworks
 * WordPress object cache for database queries
 * Admin assets loaded only on BannerMonster screens

## Скриншоттор

[⌊Banner type and configuration settings⌉⌊Banner type and configuration settings⌉[

Banner type and configuration settings

[⌊Display rules with targeting options⌉⌊Display rules with targeting options⌉[

Display rules with targeting options

[⌊Trigger configuration with reappear control⌉⌊Trigger configuration with reappear
control⌉[

Trigger configuration with reappear control

[⌊Style and customization options⌉⌊Style and customization options⌉[

Style and customization options

## Орнотуу

 1. Upload the `bannermonster` folder to `/wp-content/plugins/`
 2. Activate the plugin through the Plugins menu in WordPress
 3. Go to the BannerMonster menu in your dashboard
 4. Create your first banner or popup

## FAQ.KG

### Does the plugin load any external scripts?

No. The frontend uses vanilla JavaScript with zero dependencies. No Google Fonts,
no analytics, no tracking, no CDN-loaded libraries. jQuery is never loaded on the
public side.

### How does the close button work?

When a visitor closes a banner or popup, the plugin stores the ID and timestamp 
in the browser’s localStorage. On subsequent page views, BannerMonster checks this
and skips banners still within the configured reappear period. The data stays entirely
in the visitor’s browser.

### How does the reappear control work?

In the Trigger metabox, set “Ricompari dopo (min)” to the number of minutes after
which the banner should show again. Set to 0 to never show again after closing. 
The close state is stored locally in the browser with a timestamp, so it persists
across page views and sessions.

### Can I show a banner only on specific pages?

Yes. In the display rules you can choose from: all pages, all posts, all CPTs, specific
pages, specific posts, specific CPTs, specific URLs, or specific taxonomy terms.
URL matching is flexible: enter a full URL or just a path, and BannerMonster handles
trailing slashes, case differences and protocol variations.

### How does debug mode work?

Add ?bannermonster_debug=1 to any URL on your site. When this parameter is present,
all banners appear on every page load regardless of localStorage state. Useful during
development and testing. A notice appears in the admin metabox when debug mode is
active.

### Does it work with page builders like Elementor, Divi or WPBakery?

Yes. BannerMonster uses high-specificity CSS selectors with !important declarations
to ensure your banner styles are applied regardless of what your theme or page builder
does.

### Can I use custom CSS classes?

Yes. Each banner has a CSS Class field for adding custom CSS classes that are applied
to the banner container.

### Does it conflict with caching plugins?

No. BannerMonster uses standard WordPress hooks. The banner HTML is rendered in 
the footer, and JavaScript handles visibility based on localStorage. Page caching
plugins work normally.

### How many banners can I create?

There is no limit. BannerMonster uses a custom post type. The plugin loads up to
50 active banners per page view.

### Does it support WooCommerce product categories?

Yes. If your WooCommerce product categories are registered as a public taxonomy,
you can target banners to specific product categories using the taxonomy display
rule.

### Is the plugin translation-ready?

Yes. All user-facing strings use WordPress translation functions with the ‘bannermonster’
text domain.

## Сын-пикирлер

There are no reviews for this plugin.

## Contributors & Developers

“BannerMonster” is open source software. The following people have contributed to
this plugin.

Мүчөлөрү

 *   [ Marco De Sangro ](https://profiles.wordpress.org/ideagrafica/)
 *   [ incod ](https://profiles.wordpress.org/incod/)
 *   [ marcods ](https://profiles.wordpress.org/marcods/)

[Translate “BannerMonster” into your language.](https://translate.wordpress.org/projects/wp-plugins/bannermonster)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/bannermonster/), check
out the [SVN repository](https://plugins.svn.wordpress.org/bannermonster/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/bannermonster/) 
by [RSS](https://plugins.trac.wordpress.org/log/bannermonster/?limit=100&mode=stop_on_copy&format=rss).

## Өзгөртүүлөр

#### 1.6.0

 * Removed custom CSS field to comply with WordPress.org plugin guidelines.
 * Renamed all internal prefixes from `bm` to `bannermonster` for unique naming 
   compliance.
 * Post type renamed from `bm_banner` to `bannermonster_banner`.
 * All meta keys, options, cache keys and JS variables now use `bannermonster_` 
   prefix.
 * Debug parameter renamed from `?bm_debug=1` to `?bannermonster_debug=1`.
 * localStorage key renamed from `bm_closed` to `bannermonster_closed`.
 * Enqueue handles renamed to `bannermonster-front` and `bannermonster-admin`.
 * CSS classes renamed from `bm-*` to `bannermonster-*`.

#### 1.5.0

 * Migrated popups and banners from `<div>` to native HTML `<dialog>` element.
 * Full WCAG 2.2 compliance: focus trap, Escape key, backdrop click, aria-label.
 * Removed manual overlay DOM element — now using `::backdrop` pseudo-element.
 * Removed `show()`, `hide()`, `bindEvents()` JavaScript functions.
 * Added `setupBackdropClose()` for native dialog close and cancel events.
 * Added `isModal()` helper for popup detection.
 * Simplified CSS: removed `.bm-overlay`, `.bm-wrap`, `.bm-visible` selectors.
 * Reduced frontend JS from ~169 to ~189 lines (net ~20 more, but removed 3 functions).
 * Reduced frontend CSS from 157 to 176 lines.
 * Removed `data-overlay` and `data-close` data attributes.
 * Added `backdrop_close` to localized script data.
 * Close button now wrapped in `<form method="dialog">` for native close behavior.
 * Banners use `open` attribute; popups use `showModal()` for focus trap.

#### 1.0.0

 * Initial release.

## Мета

 *  Нуска **1.6.0**
 *  Акыркы жаңыртуу **2 күн мурун**
 *  Активдүү орнотуулар **Fewer than 10**
 *  WordPress нускасы ** 5.8 же андан жогору **
 *  Tested up to **7.1**
 *  PHP нускасы ** 7.4 же андан жогору **
 *  Тил
 * [English (US)](https://wordpress.org/plugins/bannermonster/)
 * Тег:
 * [banner](https://kir.wordpress.org/plugins/tags/banner/)[conversion](https://kir.wordpress.org/plugins/tags/conversion/)
   [marketing](https://kir.wordpress.org/plugins/tags/marketing/)[modal](https://kir.wordpress.org/plugins/tags/modal/)
   [popup](https://kir.wordpress.org/plugins/tags/popup/)
 *  [Advanced View](https://kir.wordpress.org/plugins/bannermonster/advanced/)

## Рейтинг

Азырынча эч кандай сын-пикир жок.

[Your review](https://wordpress.org/support/plugin/bannermonster/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/bannermonster/reviews/)

## Мүчөлөрү

 *   [ Marco De Sangro ](https://profiles.wordpress.org/ideagrafica/)
 *   [ incod ](https://profiles.wordpress.org/incod/)
 *   [ marcods ](https://profiles.wordpress.org/marcods/)

## Колдоо

Комментарийлер барбы? Жардам керекпи?

 [Колдоо форумун көрүү](https://wordpress.org/support/plugin/bannermonster/)