load_template() – Requires the template file with WordPress environment.

You appear to be a bot. Output may be restricted

Description

Requires the template file with WordPress environment.

The globals are set up for the template file to ensure that the WordPress environment is available from within the function. The query variables are also available.

Usage

load_template( $_template_file, $require_once, $args );

Parameters

$_template_file
( string ) required – Path to template file.
$require_once
( bool ) optional default: 1 – Whether to require_once or require. Default true.
$args
( array ) optional – Optional. Additional arguments passed to the template. Default empty array.

Returns

void

Source

File name: wordpress/wp-includes/template.php


Lines:

1 to 51 of 51
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 );
}
 

 View on GitHub View on Trac