get_shortcode_tags_in_content

The timeline below displays how wordpress function get_shortcode_tags_in_content has changed across different WordPress versions. If a version is not listed, refer to the next available version below.

WordPress Version: .39

/**
 * Returns a list of registered shortcode names found in the given content.
 *
 * Example usage:
 *
 *     get_shortcode_tags_in_content( '[audio src="file.mp3"][/audio] [foo] [gallery ids="1,2,3"]' );
 *     // array( 'audio', 'gallery' )
 *
 * @since 6.3.2
 *
 * @param string $content The content to check.
 * @return string[] An array of registered shortcode names found in the content.
 */
function get_shortcode_tags_in_content($content)
{
    if (false === strpos($content, '[')) {
        return array();
    }
    preg_match_all('/' . get_shortcode_regex() . '/', $content, $matches, PREG_SET_ORDER);
    if (empty($matches)) {
        return array();
    }
    $tags = array();
    foreach ($matches as $shortcode) {
        $tags[] = $shortcode[2];
        if (!empty($shortcode[5])) {
            $deep_tags = get_shortcode_tags_in_content($shortcode[5]);
            if (!empty($deep_tags)) {
                $tags = array_merge($tags, $deep_tags);
            }
        }
    }
    return $tags;
}