You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用ACF Extended PRO在WordPress文章中显示多文件?

问题解决:ACF多文件字段无法显示文件

当你为ACF File字段启用「Allow multiple files」选项后,get_field('documents')返回的是包含多个文件对象的数组,而非单个文件对象。你原来的代码只处理单个文件的逻辑,因此无法遍历显示所有附加文件。

修改后的代码如下,通过遍历数组来输出每个文件:

<?php
$files = get_field('documents');
if( $files ): ?>
    <?php foreach( $files as $file ): ?>
        <?php
        // 提取文件变量
        $url = $file['url'];
        $title = $file['title'];
        $caption = $file['caption'];
        $icon = $file['icon'];

        // 图片文件显示缩略图,非图片使用默认图标
        if( $file['type'] == 'image' ) {
            $icon = $file['sizes']['thumbnail'];
        }
        ?>

        <?php // 包裹标题容器 ?>
        <?php if( $caption ): ?>
            <div class="wp-caption">
        <?php endif; ?>

        <a href="<?php echo esc_attr($url); ?>" title="<?php echo esc_attr($title); ?>">
            <img src="<?php echo esc_attr($icon); ?>" alt="<?php echo esc_attr($title); ?>" />
            <span><?php echo esc_html($title); ?></span>
        </a>

        <?php // 输出标题文本 ?>
        <?php if( $caption ): ?>
            <p class="wp-caption-text"><?php echo esc_html($caption); ?></p>
            </div>
        <?php endif; ?>
    <?php endforeach; ?>
<?php endif; ?>

注意事项

  • 确认代码中的字段名称documents和你在ACF中设置的字段别名完全一致
  • 非图片格式(PDF、DOCX等)会自动调用WordPress默认的文件类型图标
  • 可以根据需求调整HTML结构和CSS类名,适配你的主题样式

内容的提问来源于stack exchange,提问作者Steve K.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 15:05:14