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.
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.
Skip to note 2 content
Drew Jaynes
Include a PHP file
include( get_template_directory() . '/includes/my_file.php' );