get_raw_theme_root()WP 3.1.0

Gets the raw theme root relative to the content directory with no filters applied.

No Hooks.

Return

String. Theme root.

Usage

get_raw_theme_root( $stylesheet_or_template, $skip_cache );
$stylesheet_or_template(string) (required)
The stylesheet or template name of the theme.
$skip_cache(true|false)
Whether to skip the cache.
Default: false, meaning the cache is used

Notes

  • Global. Array. $wp_theme_directories

Changelog

Since 3.1.0 Introduced.

get_raw_theme_root() code WP 6.5.2

function get_raw_theme_root( $stylesheet_or_template, $skip_cache = false ) {
	global $wp_theme_directories;

	if ( ! is_array( $wp_theme_directories ) || count( $wp_theme_directories ) <= 1 ) {
		return '/themes';
	}

	$theme_root = false;

	// If requesting the root for the active theme, consult options to avoid calling get_theme_roots().
	if ( ! $skip_cache ) {
		if ( get_option( 'stylesheet' ) == $stylesheet_or_template ) {
			$theme_root = get_option( 'stylesheet_root' );
		} elseif ( get_option( 'template' ) == $stylesheet_or_template ) {
			$theme_root = get_option( 'template_root' );
		}
	}

	if ( empty( $theme_root ) ) {
		$theme_roots = get_theme_roots();
		if ( ! empty( $theme_roots[ $stylesheet_or_template ] ) ) {
			$theme_root = $theme_roots[ $stylesheet_or_template ];
		}
	}

	return $theme_root;
}