A WordPress-centric search engine for devs and theme authors



get_theme_root ›

Since1.5.0
Deprecatedn/a
get_theme_root ( $stylesheet_or_template = false )
Parameters:
  • (string) $stylesheet_or_template The stylesheet or template name of the theme
    Required: No
    Default: false
Returns:
  • (string) Theme path.
Defined at:
Codex:

Retrieve path to themes directory.

Does not have trailing slash.



Source

function get_theme_root( $stylesheet_or_template = false ) {
	global $wp_theme_directories;

	$theme_root = '';

	if ( $stylesheet_or_template ) {
		$theme_root = get_raw_theme_root( $stylesheet_or_template );
		if ( $theme_root ) {
			// Always prepend WP_CONTENT_DIR unless the root currently registered as a theme directory.
			// This gives relative theme roots the benefit of the doubt when things go haywire.
			if ( ! in_array( $theme_root, (array) $wp_theme_directories ) ) {
				$theme_root = WP_CONTENT_DIR . $theme_root;
			}
		}
	}

	if ( ! $theme_root ) {
		$theme_root = WP_CONTENT_DIR . '/themes';
	}

	/**
	 * Filters the absolute path to the themes directory.
	 *
	 * @since 1.5.0
	 *
	 * @param string $theme_root Absolute path to themes directory.
	 */
	return apply_filters( 'theme_root', $theme_root );
}