函数原型
load_template( string $_template_file, bool $require_once = true, array $args = array() )
函数描述
Requires the template file with WordPress environment.
是否弃用
未弃用
函数参数
-
$_template_file
string
Required - Path to template file.
-
$require_once
bool
Optional - Whether to require_once or require.
Default:
true -
$args
array
Optional - Additional arguments passed to the template.
Default:
array()
函数返回值
无
函数位置
File: wp-includes/template.php.
函数源码
function load_template( $_template_file, $require_once = true, $args = array() ) {
global $posts, $post, $wp_did_header, $wp_query, $wp_rewrite, $wpdb, $wp_version, $wp, $id, $comment, $user_ID;
if ( is_array( $wp_query->query_vars ) ) {
/*
* This use of extract() cannot be removed. There are many possible ways that
* templates could depend on variables that it creates existing, and no way to
* detect and deprecate it.
*
* Passing the EXTR_SKIP flag is the safest option, ensuring globals and
* function variables cannot be overwritten.
*/
// phpcs:ignore WordPress.PHP.DontExtract.extract_extract
extract( $wp_query->query_vars, EXTR_SKIP );
}
if ( isset( $s ) ) {
$s = esc_attr( $s );
}
/**
* Fires before a template file is loaded.
*
* @since 6.1.0
*
* @param string $_template_file The full path to the template file.
* @param bool $require_once Whether to require_once or require.
* @param array $args Additional arguments passed to the template.
*/
do_action( 'wp_before_load_template', $_template_file, $require_once, $args );
if ( $require_once ) {
require_once $_template_file;
} else {
require $_template_file;
}
/**
* Fires after a template file is loaded.
*
* @since 6.1.0
*
* @param string $_template_file The full path to the template file.
* @param bool $require_once Whether to require_once or require.
* @param array $args Additional arguments passed to the template.
*/
do_action( 'wp_after_load_template', $_template_file, $require_once, $args );
}
源码链接
变更日志
| Version | Description |
|---|---|
| 5.5.0 | The $args parameter was added. |
| 1.5.0 | Introduced. |

