get_attachment_template() – Retrieves path of attachment template in current or parent template.

You appear to be a bot. Output may be restricted

Description

Retrieves path of attachment template in current or parent template.

The hierarchy for this template looks like:

  1. {mime_type}-{sub_type}.php
  2. {sub_type}.php
  3. {mime_type}.php
  4. attachment.php

An example of this is:

  1. image-jpeg.php
  2. jpeg.php
  3. image.php
  4. attachment.php

The template hierarchy and template path are filterable via the $type_template_hierarchy and $type_template dynamic hooks, where $type is 'attachment'.

Usage

$string = get_attachment_template();

Parameters

Returns

string Full path to attachment template file.

Source

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


Lines:

1 to 23 of 23
function get_attachment_template() {
  $attachment = get_queried_object();

  $templates = array();

  if ( $attachment ) {
    if ( str_contains( $attachment->post_mime_type, '/' ) ) {
      list( $type, $subtype ) = explode( '/', $attachment->post_mime_type );
    } else {
      list( $type, $subtype ) = array( $attachment->post_mime_type, '' );
    }

    if ( ! empty( $subtype ) ) {
      $templates[] = "{$type}-{$subtype}.php";
      $templates[] = "{$subtype}.php";
    }
    $templates[] = "{$type}.php";
  }
  $templates[] = 'attachment.php';

  return get_query_template( 'attachment', $templates );
}
 

 View on GitHub View on Trac