get_attachment_template

函数
get_attachment_template ( No parameters )
返回值
  • (string) Full path to attachment template file.
相关
  • get_query_template()
定义位置
相关方法
get_home_templateget_date_templateget_archive_templatewp_get_attachment_imageget_tag_template
引入
2.0.0
弃用
-

get_attachment_template: 这个函数检索当前主题的附件模板的路径。

检索当前或父模板中的附件模板的路径。

这个模板的层次结构看起来像:

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

这方面的一个例子是:

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

模板层次和模板路径可通过{@see ‘$type_template_hierarchy’}和{@see ‘$type_template’}动态钩子过滤,其中`$type’为’附件’。

function get_attachment_template() {
	$attachment = get_queried_object();

	$templates = array();

	if ( $attachment ) {
		if ( false !== strpos( $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 );
}

常见问题

FAQs
查看更多 >