get_template_part() – Loads a template part into a template.

You appear to be a bot. Output may be restricted

Description

Loads a template part into a template.

Provides a simple mechanism for child themes to overload reusable sections of code in the theme. Includes the named template part for a theme or if a name is specified then a specialised part will be included. If the theme contains no {slug}.php file then no template will be included. The template is included using require, not require_once, so you may include the same template part multiple times. For the $name parameter, if the file is called "{slug}-special.php" then specify "special".

Usage

$void|false = get_template_part( $slug, $name, $args );

Parameters

$slug
( string ) required – The slug name for the generic template.
$name
( string ) optional – The name of the specialised template.
$args
( array ) optional – Optional. Additional arguments passed to the template. Default empty array.

Returns

void|false Void on success, false if the template does not exist.

Source

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


Lines:

1 to 44 of 44
function get_template_part( $slug, $name = null, $args = array() ) {
  
/**
 * Fires before the specified template part file is loaded.
 *
 * The dynamic portion of the hook name, `$slug`, refers to the slug name
 * for the generic template part.
 *
 * @since 3.0.0
 * @since 5.5.0 The `$args` parameter was added.
 *
 * @param string      $slug The slug name for the generic template.
 * @param string|null $name The name of the specialized template.
 * @param array       $args Additional arguments passed to the template.
 */
  do_action( "get_template_part_{$slug}", $slug, $name, $args );

  $templates = array();
  $name      = (string) $name;
  if ( '' !== $name ) {
    $templates[] = "{$slug}-{$name}.php";
  }

  $templates[] = "{$slug}.php";

  
/**
 * Fires before an attempt is made to locate and load a template part.
 *
 * @since 5.2.0
 * @since 5.5.0 The `$args` parameter was added.
 *
 * @param string   $slug      The slug name for the generic template.
 * @param string   $name      The name of the specialized template.
 * @param string[] $templates Array of template files to search for, in order.
 * @param array    $args      Additional arguments passed to the template.
 */
  do_action( 'get_template_part', $slug, $name, $templates, $args );

  if ( ! locate_template( $templates, true, false, $args ) ) {
    return false;
  }
}
 

 View on GitHub View on Trac