函数文档

get_template_directory()

💡 云策文档标注

概述

get_template_directory() 函数用于获取当前活动主题的模板目录的绝对服务器路径。在子主题场景下,它返回父主题的目录路径,而非子主题路径。

关键要点

  • 返回活动主题模板目录的绝对路径(如 /home/user/public_html/wp-content/themes/my_theme),不是 URI。
  • 使用子主题时,返回父主题目录路径;获取子主题路径应使用 get_stylesheet_directory()。
  • 路径末尾不包含斜杠。
  • 内部依赖 get_theme_root() 和 get_template() 函数。
  • 可通过 'template_directory' 过滤器钩子进行自定义过滤。

代码示例

include( get_template_directory() . '/includes/my_file.php' );

注意事项

如需获取样式表目录的 URI,应使用 get_stylesheet_directory_uri() 函数。


📄 原文内容

Retrieves template directory path for the active theme.

Return

string Path to active theme’s template directory.

More Information

Usage

echo get_template_directory();

Returns an absolute server path (eg: /home/user/public_html/wp-content/themes/my_theme), not a URI.

In the case a child theme is being used, the absolute path to the parent theme directory will be returned. Use get_stylesheet_directory() to get the absolute path to the child theme directory.

To retrieve the URI of the stylesheet directory use get_stylesheet_directory_uri() instead.

Notes

  • Uses: get_theme_root() to retrieve the absolute path to the themes directory, get_template() to retrieve the directory name of the current theme.
  • Does not output a trailing slash

Source

function get_template_directory() {
	$template     = get_template();
	$theme_root   = get_theme_root( $template );
	$template_dir = "$theme_root/$template";

	/**
	 * Filters the active theme directory path.
	 *
	 * @since 1.5.0
	 *
	 * @param string $template_dir The path of the active theme directory.
	 * @param string $template     Directory name of the active theme.
	 * @param string $theme_root   Absolute path to the themes directory.
	 */
	return apply_filters( 'template_directory', $template_dir, $template, $theme_root );
}

Hooks

apply_filters( ‘template_directory’, string $template_dir, string $template, string $theme_root )

Filters the active theme directory path.

Changelog

Version Description
6.4.1 Memoization removed.
6.4.0 Memoizes filter execution so that it only runs once for the current theme.
1.5.0 Introduced.

User Contributed Notes