return;
}
- if ( 0 !== preg_match( '@[<>&/\[\]\x00-\x20]@', $tag ) ) {
- /* translators: %s: shortcode name */
- $message = sprintf( __( 'Invalid shortcode name: %s. Do not use spaces or reserved characters: & / < > [ ]' ), $tag );
+ 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, '4.4.0' );
return;
}
return $content;
// Find all registered tag names in $content.
- preg_match_all( '@\[([^<>&/\[\]\x00-\x20]++)@', $content, $matches );
+ preg_match_all( '@\[([^<>&/\[\]\x00-\x20=]++)@', $content, $matches );
$tagnames = array_intersect( array_keys( $shortcode_tags ), $matches[1] );
if ( empty( $tagnames ) ) {
return $content;
// Find all registered tag names in $content.
- preg_match_all( '@\[([^<>&/\[\]\x00-\x20]++)@', $content, $matches );
+ preg_match_all( '@\[([^<>&/\[\]\x00-\x20=]++)@', $content, $matches );
$tagnames = array_intersect( array_keys( $shortcode_tags ), $matches[1] );
if ( empty( $tagnames ) ) {
}
/**
+ * Strips a shortcode tag based on RegEx matches against post content.
*
- * @param array $m
- * @return string|false
+ * @since 3.3.0
+ *
+ * @param array $m RegEx matches against post content.
+ * @return string|false The content stripped of the tag, otherwise false.
*/
function strip_shortcode_tag( $m ) {
// allow [[foo]] syntax for escaping a tag