附件是一种特殊的文章类型,用于存储通过 WordPress 媒体上传系统上传的文件的相关信息,比如文件的描述和名称,这些信息可以通过多个 文章类型 – 附件模板文件来显示。
以图片为例,附件这种文章类型会关联到各种元数据信息,包括图片的大小、生成的缩略图、图片文件的位置、HTML 描述文本,甚至是从图片中嵌入的 EXIF 数据中获取的信息。利用附件模板来获取更多上传文件的元数据信息,有助于提升 SEO 效果。
如 模板层级结构所示,可以通过多个模板文件按顺序显示附件内容:
MIME_type.php和subtype.php
可以是任何 MIME 类型(例如:image.php、video.php、application.php)。对于 text/plain 类型,则按以下顺序使用路径:text_plain.phpplain.phptext.php
attachment.phpsingle-attachment.phpsingle.phpsingular.phpindex.php
MIME_type.php
附件会根据其 MIME 类型由相应的模板文件来呈现。例如,如果你的附件是图片,就可以通过创建 image.php 模板文件来自定义图片的显示方式。所有 post_mime_type 为 image/* 的图片都会通过你的 image.php 模板文件来渲染。
附件还支持使用 MIME subtype.php 文件。继续以图片为例,你可以进一步自定义主题,使其不仅支持 image.php 文件,还支持 jpg.php 这样的子类型文件。
Attachment.php
附件页面(attachment.php)是一种文章类型为附件的单篇文章页面,是通过创建 attachment.php 文件来生成的。就像专门用于展示文章的 单篇文章页面一样,附件页面也为主题中的附件提供了专门的展示页面。
创建附件页面与创建一个 attachment.php 文件一样简单。该文件中的代码与 single.php 文章页面的代码类似。
<div class="entry-attachment">
<?php
$image_size = apply_filters( 'wporg_attachment_size', 'large' );
echo wp_get_attachment_image( get_the_ID(), $image_size );
?>
<?php if ( has_excerpt() ) : ?>
<div class="entry-caption">
<?php the_excerpt(); ?>
</div><!-- .entry-caption -->
<?php endif; ?>
</div><!-- .entry-attachment -->函数参考
- get_attachment_template():获取当前模板或父模板中用于显示附件的模板文件路径。