ACF 画廊图片网址

ACF gallery images urls

我在自定义 post 类型中使用高级自定义字段库;

我已使用以下代码成功显示添加到图库的图像(缩略图)

        $images = get_field('gallery'); if( $images ): $images = explode(',', $images); $images = array_filter($images); if( count($images)):
        ?>
            <ul>
            <?php foreach( $images as $image ): $alt = get_the_title($image); $url = ```this is where I'm stuck``` ?>
                <li>
                    <a href="<?php echo $url; ?>" title="<?php echo $alt; ?>">
                        <?php echo wp_get_attachment_image($image, "thumbnail", false, ['alt' => $alt]); ?>
                    </a>
                </li>
            <?php endforeach; endif; ?>
            </ul>
        <?php endif; ?>

如何获取图片的网址?

我试过了 <?php echo $image['url']; ?> 但是没用

应该很简单。获取缩略图的方式与获取缩略图的方式相同。

资源: https://www.advancedcustomfields.com/resources/gallery/

<?php 
$images = get_field('gallery');
$size = 'full'; // (thumbnail, medium, large, full or custom size)
if( $images ): ?>
    <ul>
        <?php 
         foreach( $images as $image_id ): 
            echo '<li data-lightbox="' . wp_get_attachment_image_src($image_id, 'full'). '">';
                echo '<img src="' . wp_get_attachment_image_src( $image_id, 'thumb' ) . '">';
            echo '</li>';
         endforeach; 
         ?>
    </ul>
<?php endif; ?>

首先,您应该确保您的自定义字段 return 值设置为 "Image Array"。这是一个常见的错误。如果设置正确,您应该能够执行以下操作。我假设如果您使用某种灯箱解决方案,您可能需要将 class 添加到 <a> 标签。无论哪种方式,这都应该成功显示图像:

<?php 

$images = get_field('gallery');

if( $images ): ?>
    <ul>
        <?php foreach( $images as $image ): ?>
            <li>
                <a href="<?php echo $image['url']; ?>" title="<?php echo $image['alt']; ?>" >
                  <img src="<?php echo $image['sizes']['thumbnail']; ?>" alt="<?php echo $image['alt']; ?>" />
                </a>
            </li>
        <?php endforeach; ?>
    </ul>
<?php endif; ?>
  1. 安装这个插件:https://wordpress.org/plugins/lightbox-photoswipe/
  2. 使用下面的代码:

    $images = get_field('gallery'); 
         if( $images ):
            $images = explode(',', $images);
            $images = array_filter($images);
            if( count($images)): ?>
                <ul>
                    <?php foreach( $images as $image ): 
                        $alt = get_the_title($image);
                        $imageUrlFull = wp_get_attachment_image_url(  $image, 'full' ) ?>
                        <li>
                            <a href="<?php echo $imageUrlFull ?>" title="<?php echo $alt; ?>">
                                <?php echo wp_get_attachment_image($image, "thumbnail", false, ['alt' => $alt]); ?>
                            </a>
                        </li>
                    <?php endforeach; ?>
                </ul>
            <?php endif; ?>
         <?php endif; ?>
    

如果你喜欢灯箱,其他人也给出了很好的提示,这取决于 js 的哪些属性或 类 用于创建灯箱。干杯。