代码之家  ›  专栏  ›  技术社区  ›  Afsanefda

WordPress高级自定义字段库不返回数组

  •  4
  • Afsanefda  · 技术社区  · 7 年前

    ACF Plugin 安装和我有一个画廊在我的职位备案。我都试过了 these 但仍然得到错误:

    Invalid argument supplied for `foreach()`
    

    你知道这有什么问题吗?

    <?php 
        $images = get_field('mygall');
        $size = 'full'; // (thumbnail, medium, large, full or custom size)
    
        if( $images ): ?>
            <ul>
                <?php foreach( $images as $image ): ?>
                    <li>
                        <?php echo wp_get_attachment_image( $image['ID'], $size ); ?>
                    </li>
                <?php endforeach; ?>
            </ul>
    <?php endif; ?>
    
    1 回复  |  直到 7 年前
        1
  •  1
  •   Ale    7 年前

    我认为你的问题是因为你在使用 get_field() 相反 get_fields() . 这样你就不会得到一个数组。

    如果仍然不起作用,请检查文档中的 here . 试着像只使用 看看输出是什么。如果它是一个空数组,则表示您正在从 loop 它无法获取post id,所以请手动设置post id进行第二个测试,如下所示 get_fields(123); get_fields(123, 'gallery') .

    echo '<pre>';
        print_r( get_fields(123) );
    echo '</pre>';
    

    基本上,这将使您了解从这个函数获得的数据的结构,以及如何操作它以获得所需的内容。