The original Shortcode implementation as it exists calls the render method on the object, but doesn't actually pass in the parameters that the shortcode callback requires: attributes, content, and the shortcode tag itself.
I think we can create a backward-compatible bugfix by adding two class properties: attributes and content, and updating the callback to a new process method instead. process will assign the class properties, then call the render method. This will make the shortcode attributes and content available to extending objects without affecting the overall interface.
This is a pretty major oversight on my part.
The original Shortcode implementation as it exists calls the
render
method on the object, but doesn't actually pass in the parameters that the shortcode callback requires: attributes, content, and the shortcode tag itself.I think we can create a backward-compatible bugfix by adding two class properties:
attributes
andcontent
, and updating the callback to a newprocess
method instead.process
will assign the class properties, then call therender
method. This will make the shortcode attributes and content available to extending objects without affecting the overall interface.