add_shortcode( string $tag, callable $callback )
Adds a new shortcode.
Description
Care should be taken through prefixing or other means to ensure that the shortcode tag being added is unique and will not conflict with other, already-added shortcode tags. In the event of a duplicated tag, the tag loaded last will take precedence.
Parameters
- $tag
-
(Required) Shortcode tag to be searched in post content.
- $callback
-
(Required) The callback function to run when the shortcode is found. Every shortcode callback is passed three parameters by default, including an array of attributes (
$atts
), the shortcode content or null if not set ($content
), and finally the shortcode tag itself ($shortcode_tag
), in that order.
Source
File: wp-includes/shortcodes.php
function add_shortcode( $tag, $callback ) {
global $shortcode_tags;
if ( '' == trim( $tag ) ) {
$message = __( 'Invalid shortcode name: Empty name given.' );
_doing_it_wrong( __FUNCTION__, $message, 'WP-4.4.0' );
return;
}
if ( 0 !== preg_match( '@[<>&/\[\]\x00-\x20=]@', $tag ) ) {
/* translators: 1: shortcode name, 2: space separated list of reserved characters */
$message = sprintf( __( 'Invalid shortcode name: %1$s. Do not use spaces or reserved characters: %2$s' ), $tag, '& / < > [ ] =' );
_doing_it_wrong( __FUNCTION__, $message, 'WP-4.4.0' );
return;
}
$shortcode_tags[ $tag ] = $callback;
}
Changelog
Version | Description |
---|---|
WP-2.5.0 | Introduced. |