Desk9 Notice Planner – Announcement Bar & Scheduler

Descripción

Desk9 Notice Planner is a lightweight plugin for informative site notices: vacation and holiday closures, changed opening hours, maintenance windows, delivery delays and short announcements. Create a notice once, schedule it precisely and let it appear and disappear automatically – evaluated in your site’s timezone on every page view.

It is deliberately not an aggressive marketing popup tool. The focus is on serious, accessible communication with your visitors.

Two display layouts

  • Announcement Bar – a slim bar at the top or bottom of your site. Static, sticky or fixed, optionally pushing your content down instead of covering it. Choose whether it runs edge to edge with square corners, or floats as an inset message with a gap on all sides and rounded corners – the two never mix. Sets with hard edges can be softened per notice: keep their shadows and accent lines, swap everything for one thin outline, or go completely flat.
  • Fullscreen Notice – an accessible dialog for critical information, with focus management, scroll lock and keyboard support.

Scheduling that understands your year

  • Always active, exact date ranges (start/end with time), or yearly recurring periods.
  • Yearly periods may cross the year boundary – "December 24 until January 2″ simply works, every year, including leap years.
  • All times use the timezone from Settings General. Visibility is computed on each page view, not via cron, so notices appear exactly on time.
  • A year calendar in the admin area shows all planned notices at a glance, including conflicts.

Fast to use

  • 27 ready-made templates – summer vacation, public holiday, maintenance window, shipping delay, new address, privacy policy update, product safety notice and more. Pick a situation and the notice is prefilled.
  • Quick Notice: publish a simple notice in seconds; refine it later in the full editor.
  • The editor shows what you build. Controls sit on the left, the rendered notice stays visible on the right while you change anything – with desktop, tablet and mobile widths and a light or dark sample page.
  • Ten style sets × five tones. Pick a look – from a bold solid bar to a soft tinted hairline, an elevated card, a dark surface or a neutral surface with a coloured accent rail – then pick how urgent it is: neutral, info, warning, important or success. Spacing, corners, borders and type come with the set.
  • Every one of the 50 combinations was checked against WCAG 2.2 AA contrast. Individual colours and spacing can still be overridden per notice.
  • Your theme’s font is used – no webfonts are loaded.

Thoughtful behavior

  • Visitors can dismiss a notice for the session, until the notice ends, or for a custom number of days – stored only in their browser, without cookies.
  • When you edit a notice, previously dismissed notices reappear automatically (content versioning).
  • Show it again on demand. A "Show again" action in the notice list and in the editor voids every stored dismissal, so people who closed the notice see it once more. To check it yourself without affecting anyone, append ?d9notice_show=1 to any URL while logged in.
  • Priorities (0–100) and a global mode decide what happens when several notices overlap: show only the highest one or stack up to three bars. Conflicts are flagged in the list, the editor and the calendar.
  • Display rules: entire site, homepage only, selected content, or everything except selected content – plus context limits (front page, blog page, singular, archives, search, 404) and device visibility.

Multilingual

  • WPML and Polylang compatible (wpml-config.xml included). Untranslated notices are hidden or fall back to the default language – your choice.

Built properly

  • No external requests, no telemetry, no tracking, no cookies, no bundled frameworks, no jQuery on the frontend.
  • Frontend CSS/JS load only when a notice is actually displayed.
  • WCAG 2.2 AA oriented markup: named regions, real dialog semantics, focus trap, visible focus, reduced-motion support.
  • Custom capabilities plus a ready-made Notice Manager role, nonce-protected actions, strict input validation, escaped output.

Privacy

Desk9 Notice Planner does not collect, store or transmit any personal data. It makes no external requests, loads no external resources and sets no cookies. The optional dismiss feature stores the dismissal state exclusively in the visitor’s own browser (sessionStorage/localStorage, keys prefixed with d9notice:notice:); these entries expire automatically and can be removed by clearing the browser storage.

Capturas

Instalación

  1. Upload the plugin files to /wp-content/plugins/desk9-notice-planner/, or install the plugin through the WordPress plugins screen directly.
  2. Activate the plugin through the "Plugins" screen in WordPress.
  3. Go to Notices Add New (or Notices Quick Notice) to create your first notice.
  4. Enable the notice, choose a schedule and publish it.

FAQ

Why is my published notice not visible?

A notice is displayed only when all of these are true: it is published, "Enable this notice" is checked, its schedule is currently active, its display rules match the current page, and (on multilingual sites) it matches the visitor’s language. The computed status is shown in the notice list and in the Schedule box.

When exactly does a notice end?

The end is exclusive: a notice with end "January 2, 23:59″ disappears at exactly 23:59. All times use the timezone configured under Settings General.

Can I use my own colours?

Yes. Every notice starts from a style set and a tone, which together define all fourteen colour slots. In the Design tab you can switch on "Override individual colours" and set any of them with the WordPress colour picker; fields you leave empty keep the colour of the set. Spacing, radius and typography can be fine-tuned the same way. There is no free-text CSS field – all values are validated and rendered as CSS custom properties.

I dismissed a notice myself and cannot get it back. What now?

Two ways, depending on what you want:

  • Only for you, to check something: append ?d9notice_show=1 to any URL of your site. While you are logged in and allowed to edit notices, dismissals are ignored for that single page view. Nobody else is affected.
  • For everyone who closed it: use the "Show again" row action in the notice list, or the "Show again for everyone" button in the notice editor under Dismissal. This raises the notice’s content version, which is part of the browser storage key, so every stored dismissal stops matching and the notice reappears.

Nothing is read from or written to a visitor’s device in either case – their old entry simply becomes irrelevant and expires on its own terms.

Does the plugin set cookies?

No. The optional dismiss feature stores a small entry in the visitor’s browser storage (sessionStorage or localStorage) under keys like d9notice:notice:123:v4. Nothing is transmitted anywhere, and the entry expires with the notice or the chosen duration. If browser storage is blocked, the notice simply stays visible.

Can somebody manage notices without being an administrator?

Yes. On activation the plugin creates a dedicated Notice Manager role. Assign it to a user and their admin area contains nothing but Dashboard, Media, Profile and Notices – they can write, schedule and publish notices and reach the plugin settings, but they cannot touch posts, pages, plugins, themes or other users.

The role holds every plugin capability plus read (needed to enter wp-admin at all) and upload_files (needed for the image field). If the role already exists, the plugin leaves it alone, so any adjustments you make with a role editor survive a reactivation.

You can also grant the capabilities to an existing role instead: edit_d9notices, edit_others_d9notices, publish_d9notices, delete_d9notices and manage_d9notice_settings for the settings screen.

The role is only deleted again if you enable "Remove the plugin capabilities …" under Notices Settings Advanced before uninstalling. Users keep their accounts either way.

Is the plugin compatible with WPML and Polylang?

Yes. The notice post type is registered as translatable, a wpml-config.xml defines which fields are translated and which are copied, and a setting controls whether untranslated notices are hidden or fall back to the default language. The plugin also works without any multilingual plugin.

Does it work with block themes?

Yes, classic and block themes are supported. For themes that do not call wp_body_open, a fallback output path is used.

What happens on uninstall?

Nothing is deleted unless you enabled "Delete all plugin data on uninstall" (and optionally "Remove plugin capabilities on uninstall") under Notices Settings Advanced.

Reseñas

No hay reseñas para este plugin.

Colaboradores y desarrolladores

"Desk9 Notice Planner – Announcement Bar & Scheduler" es un software de código abierto. Las siguientes personas han colaborado con este plugin.

Colaboradores

Registro de cambios

1.0.0

  • Initial release: announcement bars and fullscreen notices, a dedicated Notice Manager role, date-range and yearly recurring scheduling in the site timezone, year calendar, Quick Notice with 27 templates, ten style sets with five semantic tones, a two-column editor with a permanently visible live preview, dismissal with content versioning, priorities and conflict detection, display rules, WPML/Polylang compatibility, accessibility-first frontend.