Image
Image

Display During Conditional Shortcode

Beschreibung

Display content conditionally based on a schedule. Choose from three scheduling modes:

  1. Date Range – Show content between specific start and end dates
  2. Recurring – Show content on specific days of the week during a time window
  3. Custom – Use PHP strtotime expressions for flexible scheduling

Gutenberg Block

The Display During block provides a visual editor with:

  • Sidebar controls for all three scheduling modes
  • Date/time pickers for start and end dates
  • Day-of-week checkboxes for recurring schedules
  • Live status indicator (active/inactive)
  • Optional fallback message when content is hidden
  • Copy as Shortcode toolbar button

Shortcodes

The [display_during] shortcode works in the Classic Editor and anywhere shortcodes are supported.

Date range:
[display_during start_day_time=“June 1, 2026 8:00 am“ end_day_time=“December 31, 2026 11:59 pm“]Content here[/display_during]

Recurring schedule (new in 2.0):
[display_during days=“mon,wed,fri“ start_time=“09:00″ end_time=“17:00″]Office hours content[/display_during]

Custom strtotime:
[display_during start_day_time=“Sun 8:00 am“ end_day_time=“Mon 8:00 pm“]Weekend content[/display_during]

With fallback message:
[display_during end_day_time=“June 1, 2026″]Register now![display_during_message]Registration has closed.[/display_during_message][/display_during]

Shortcode Parameters

  • start_day_time – When to start showing content (strtotime string or date)
  • end_day_time – When to stop showing content
  • days – Comma-separated days for recurring mode (mon,tue,wed,thu,fri,sat,sun)
  • start_time – Start time for recurring mode (HH:MM format)
  • end_time – End time for recurring mode (HH:MM format)
  • timezone_location – PHP timezone identifier (defaults to site timezone)
  • message – Plain text fallback message (legacy; use nested shortcode for rich content)

Screenshots

  • Image
    Block Editor – Display During block with schedule sidebar
  • Image
    Block Editor – Recurring schedule with day checkboxes
  • Image
    Content shown during valid dates

Blöcke

Dieses Plugin unterstützt 3 Blöcke.

  • Display During Show or hide content based on a date/time schedule.
  • Display During: Content Main content zone — displayed when the schedule conditions are met.
  • Display During: Message Fallback message zone — displayed when the schedule conditions are NOT met.

Installation

Install via Plugins > Install New

  1. Search for „Display During Conditional Shortcode“
  2. Click the „Install Now“ link
  3. Click „Activate Plugin“

Via ZIP / FTP

  1. Unzip the ZIP file and drop the folder straight into your wp-content/plugins directory.
  2. Activate the plugin through the ‚Plugins‘ menu in WordPress.

Using the Block Editor

  1. Add a new block and search for „Display During“
  2. Configure the schedule in the sidebar
  3. Add content to the Content zone
  4. Optionally enable and add a fallback message

Using the Shortcode

  1. Insert [display_during end_day_time="June 27, 2026 10:00 am"]Your content[/display_during]
  2. Publish and view the post or page

FAQ

How do I show content on a recurring schedule?

Use the Recurring mode in the block sidebar, or the shortcode days parameter:

[display_during days="mon,wed,fri" start_time="09:00" end_time="17:00"]Weekday content[/display_during]

What are valid time settings for start_day_time and end_day_time?

The plugin uses PHP’s strtotime() function. You can specify a specific date (e.g. „June 27, 2026 10:00 am“) or a relative expression (e.g. „Sun 8:00 am“, „Today 9am“).

Either start_day_time or end_day_time (or both) must be provided. If start_day_time is omitted, „now“ is used. If end_day_time is omitted, content is shown permanently after the start time.

Can I show content only after a certain date?

Yes! Use start_day_time without end_day_time:
[display_during start_day_time=“June 1, 2026 8:00 am“ message=“Coming soon!“]Content[/display_during]

Can I show rich fallback content instead of plain text?

Yes! Use the nested [display_during_message] shortcode:
[display_during end_day_time=“June 1, 2026″]Main content[display_during_message]Sorry, this is no longer available.[/display_during_message][/display_during]

In the block editor, check „Show optional message when not displayed“ to reveal the message zone.

Does the block work with the Classic Editor?

Yes. The block saves a real shortcode in the post content, so it round-trips cleanly between the Block Editor and Classic Editor.

Can I convert existing shortcodes to blocks?

Yes. The plugin includes a shortcode-to-block transform. Existing [display_during] shortcodes can be converted using the „Convert to Blocks“ feature.

Is support available?

Yes, use the contact form on the ShareThePractice.org website.

Rezensionen

Image
22. August 2020
Very simple, flexible and useful plugin. Saved a lot of time that would have otherwise been spent coding.
Image
7. September 2017
I use this widget in my event calender to display the weather forecast using two different views. If there are 2-7 days left until the event starts I use the 7-day forecast widget. If there are less than 2 days left I use the intraday-weather forecast of another widget. That works great!
Alle 4 Rezensionen lesen

Mitwirkende und Entwickler

„Display During Conditional Shortcode“ ist Open-Source-Software. Folgende Menschen haben an diesem Plugin mitgewirkt:

Mitwirkende

Änderungsprotokoll

2.0

  • New: Gutenberg block with visual schedule controls (Dates, Recurring, Custom modes)
  • New: Recurring schedule mode – show content on specific days of the week during a time window
  • New: Nested [display_during_message] shortcode for rich fallback content (HTML, shortcodes, media)
  • New: Shortcode-to-block transform for converting existing shortcodes
  • New: Copy as Shortcode toolbar button in block editor
  • New: Live schedule status indicator in editor (active/inactive/unknown)
  • New: Shared schedule evaluation engine used by both block and shortcode
  • New: Full i18n support with .pot file for translations
  • Improvement: Refactored shortcode handler to use shared evaluator
  • Improvement: All date comparisons use integer timestamps (fixes microsecond comparison bug)
  • Requires WordPress 6.1+ (for block editor support)

1.4

  • Feature: Support start_day_time without end_day_time to show content permanently after a date
  • end_day_time is no longer required when start_day_time is provided

1.3

  • Security: Sanitize all shortcode attributes with sanitize_text_field() and wp_kses_post()
  • Security: Validate timezone against timezone_identifiers_list() before use
  • Improvement: Rewrite date handling using DateTime/DateTimeZone objects instead of date_default_timezone_set()
  • Improvement: Add try/catch for invalid date/time strings in shortcode attributes
  • Coding standards: Full PHPCS WordPress-Extra compliance

1.2

  • Bug fix to reset timezone back to whatever it was before the shortcode runs

1.1

  • Public release of plugin to WordPress repository

1.0

  • Initial version of plugin, internal release only