Shortcode module for WordPress.
Install the module
npm install @wordpress/shortcode --saveThis package assumes that your code will run in an ES2015+ environment. If you're using an environment that has limited or no support for ES2015+ such as lower versions of IE then using core-js or @babel/polyfill will add support for these methods. Learn more about it in Babel docs.
# attrs
Parse shortcode attributes.
Shortcodes accept many types of attributes. These can chiefly be divided into named and numeric attributes:
Named attributes are assigned on a key/value basis, while numeric attributes are treated as an array.
Named attributes can be formatted as either name="value", name='value',
or name=value. Numeric attributes can be formatted as "value" or just
value.
Parameters
- text
string: Serialised shortcode attributes.
Returns
WPShortcodeAttrs: Parsed shortcode attributes.
# default
Creates a shortcode instance.
To access a raw representation of a shortcode, pass an options object,
containing a tag string, a string or object of attrs, a string indicating
the type of the shortcode ('single', 'self-closing', or 'closed'), and a
content string.
Parameters
- options
Object: Options as described.
Returns
WPShortcode: Shortcode instance.
# fromMatch
Generate a Shortcode Object from a RegExp match.
Accepts a match object from calling regexp.exec() on a RegExp generated
by regexp(). match can also be set to the arguments from a callback
passed to regexp.replace().
Parameters
- match
Array: Match array.
Returns
WPShortcode: Shortcode instance.
# next
Find the next matching shortcode.
Parameters
- tag
string: Shortcode tag. - text
string: Text to search. - index
number: Index to start search from.
Returns
?WPShortcodeMatch: Matched information.
# regexp
Generate a RegExp to identify a shortcode.
The base regex is functionally equivalent to the one found in
get_shortcode_regex() in wp-includes/shortcodes.php.
Capture groups:
- An extra
[to allow for escaping shortcodes with double[[]] - The shortcode name
- The shortcode argument list
- The self closing
/ - The content of a shortcode when it wraps some content.
- The closing tag.
- An extra
]to allow for escaping shortcodes with double[[]]
Parameters
- tag
string: Shortcode tag.
Returns
RegExp: Shortcode RegExp.
# replace
Replace matching shortcodes in a block of text.
Parameters
- tag
string: Shortcode tag. - text
string: Text to search. - callback
Function: Function to process the match and return replacement string.
Returns
string: Text with shortcodes replaced.
# string
Generate a string from shortcode parameters.
Creates a shortcode instance and returns a string.
Accepts the same options as the shortcode() constructor, containing a
tag string, a string or object of attrs, a boolean indicating whether to
format the shortcode using a single tag, and a content string.
Parameters
- options
Object:
Returns
string: String representation of the shortcode.
