您的当前位置:首页 > 知识博客 > wordpress建站

wp_get_attachment_image 返回附件文件的HTML图像元素

时间:2024-03-30

函数描述

这里有一个函数,能够返回附件文件的HTML图像元素。如果没有找到附件,该函数会返回空字符串。

使用方法

<?php wp_get_attachment_image( $attachment_id, $size, $icon, $attr ); ?>

当附件是一张图片时,此函数会返回指定尺寸的图片。而其他类型的附件则会返回代表该附件类型的多媒体图标,如果将$icon设置为true的话。

如果需要在模板中动态获取多媒体ID,则可以使用get_posts('post_type=attachment')

默认使用

<?php echo wp_get_attachment_image(1); ?>

需要注意的是,如果附件不是一张图片,则函数返回针对该附件类型的多媒体图标而不是任何图片。作为备选方案,可以使用get_the_attachment_link函数来获取附件的链接。

参数

参数数据类型是否必需描述默认值
$attachment_id整数附件ID
$size字符串 | 数组需要显示的图片附件的尺寸:可以是以下尺寸名称或尺寸数组,如:array(32,32)thumbnail

当需要使用图片的尺寸数组时,除了使用图片的尺寸数组外,还可以使用add_image_size函数注册一个图片尺寸。这样能够生成一个裁剪后的图片,比起使用数组更方便和有效。

$icon (boolean) (可选) : 当需要代表附件的媒体图标时,默认值为False。

  • 1(True)

  • 0(False)–默认值

$attr (string/array) (可选) : 查询字符串或属性数组,默认值:None

$default_attr=array(   'src'  =>$src,   'class' =>"attachment-$size",   'alt'=>trim(strip_tags(get_post_meta($attachment_id,'_wp_attachment_image_alt',true))), );

$attr参数合并了WordPress默认属性和传递到wp_get_attachment_image_attributesfilter的属性。

使用示例

显示全部图片为一个列表

下面的代码可用于以列表形式展示附加到某页面中的所有图片和标题:

<ul> <?php if(have_posts()) : while(have_posts()) : the_post(); $args=array(   'post_type'=>'attachment',   'numberposts'=>-1,   'post_status'=>null,   'post_parent'=>$post->ID ); $attachments=get_posts($args); if($attachments){   foreach($attachments as $attachment){     echo'<li>';     echo wp_get_attachment_image($attachment->ID,'full');     echo'<p>';     echo apply_filters('the_title',$attachment->post_title);     echo'</p></li>';   } } endwhile; endif; ?> </ul>

返回值

此函数会返回一个HTML元素或空字符串(如果获取失败的话)。


欢迎咨询/Welcome to inquire
tel/vx:18842938855
qq:1685522781
email:1685522781@qq.com

Copyright © 2019-2024 thinkphp.xyz


Whatsapp