Purpose

Compile-time gate of the render-plan pipeline. While the Compiler expands an object, a shortcode handler that resolves data per request (e.g. loads an entry from the current request context) can report itself as uncacheable through this filter. The Compiler then refuses to put the expanded HTML into form_cache — the object always renders through the runtime bridge, where every filter runs per request.

WR’s own [wr_form] handler registers this filter and reports forms that resolve their entry per request.

Usage

add_filter( 'wr_render_plan_form_uncacheable', array( self::class, 'report_uncacheable' ), 10, 1 );

Parameters

  • $uncacheable (bool): Default false. Return true from your handler if the object your shortcode just compiled must not be plan-cached.

Notes

Advanced hook — only relevant for plugins that ship their own shortcodes and want them to be compatible with the cached render plan. When in doubt, returning true is the safe option: the content is then always rendered per request.