可能还有其他的可能性,我的如下所示。。
首先使用get_post_gallery
函数将图像id存储在单独的数组中。。
if ( get_post_gallery() ) {
$gallery = get_post_gallery( get_the_ID(), false );
$galleryIDS[] = array();
/* Loop through all the image and store them one by one */
foreach( $gallery[\'ids\'] as $ids ) {
$galleryIDS[] = $ids;
}
}
然后使用
wp_get_attachment_image
如下所示。。
<?php foreach ($galleryIDS as $key => $value ) { ?>
<div class="galerija-box">
<a href="<?php echo wp_get_attachment_image( $value, \'medium\' ) ?>" rel="lightbox">
<img src="<?php echo wp_get_attachment_image( $value, \'full\' ) ?>"/>
</a>
</div>
<?php } ?>
我没有测试代码,因此它可能有一些语法问题,但该方法应该适合您。。
EDIT
如前所述,我没有检查代码是否正常工作。所以我对它进行了测试,发现了一些bug,并修复了它们。以下是工作代码。。
if ( get_post_gallery() ) {
$gallery = get_post_gallery( get_the_ID(), false );
$galleryIDS = $gallery[\'ids\'];
$pieces = explode(",", $galleryIDS);
foreach ($pieces as $key => $value ) {
$image_medium = wp_get_attachment_image_src( $value, \'medium\');
$image_full = wp_get_attachment_image_src( $value, \'full\');
?>
<div class="galerija-box">
<a href="<?php echo $image_medium[0] ?>" rel="lightbox">
<img src="<?php echo $image_full[0] ?>"/>
</a>
</div>
<?php
}
}
?>
参考号:
https://codex.wordpress.org/Function_Reference/wp_get_attachment_image_src