我正在尝试显示附加到wordpress帖子的所有图像,并将图像链接到图像源,以便在灯箱中打开它。我使用以下代码:
if (have_posts())
{
while (have_posts())
{
the_post();
$args = array(
'orderby' => 'title',
'order' => 'ASC',
'post_type' => 'attachment',
'numberposts' => -1,
'post_status' => null,
'post_parent' => $post->ID,
'exclude' => get_post_thumbnail_id()
);
$attachments = get_posts( $args );
if ($attachments)
{
foreach ($attachments as $attachment)
{
?>
<div id="image">
<a rel="lightbox" href="<?php /* ??? */ ?>">
<?php echo wp_get_attachment_image ($attachment->ID, 'full'); ?>
</a>
</div>
<?php
}
}
}
}
我尝试了很多???
的内容,但我似乎无法只检索源网址。
任何人都可以提供一些见解吗?
答案 0 :(得分:7)
使用wp_get_attachment_image_src
https://codex.wordpress.org/Function_Reference/wp_get_attachment_image_src
此:
wp_get_attachment_image_src( $attachment->ID, 'full' );
应返回包含以下元素的数组
[0] => url
[1] => width
[2] => height
[3] => boolean: true if $url is a resized image, false if it is the original or if no image is available.
答案 1 :(得分:0)
如果您只想链接到原始完整图像,最好使用“ wp_get_attachment_url”-https://developer.wordpress.org/reference/functions/wp_get_attachment_url/
wp_get_attachment_image_src函数将运行不需要的代码,并返回不需要的其他详细信息,从而使代码效率降低。