当前位置: 首页 > 知识库问答 >
问题:

灵活内容中的ACF中继器字段

姬天宇
2023-03-14

我正在尝试将转发器字段添加到灵活的内容行中,但由于某种原因,没有输出任何内容。我已经检查了字段,它们似乎是正确的,所以有人可以指出我哪里出错了吗?谢谢

        <?php if(get_row_layout() == "collection_title"): // layout: Collection Title ?>

            <div>
                <h4><?php the_sub_field("collection_title"); ?></h4>
            </div>


        <?php elseif(get_row_layout() == "collection_images"): // layout: Collection Images ?>


                <?php if(get_field('collection_images_grid')): ?>

                    <?php while(has_sub_field('collection_images_grid')): ?>

                        <div class="collections">

                            <span><strong><?php the_sub_field('collection_detail'); ?></strong></span>

                            <a href="<?php the_sub_field('product_link'); ?>">

                                <img src="<?php the_sub_field('collection_image'); ?>"/>

                            </a>

                        </div>

                    <?php endwhile; ?>

                 <?php endif; ?>

        <?php endif; ?>

    <?php endwhile; ?>

共有3个答案

洪光霁
2023-03-14

你应该在你的代码中改变一件事。更改<代码>

<?php if(get_row_layout() == "collection_title"): // layout: Collection Title ?>

            <div>
                <h4><?php the_sub_field("collection_title"); ?></h4>
            </div>


        <?php elseif(get_row_layout() == "collection_images"): // layout: Collection Images ?>


                <?php if(get_sub_field('collection_images_grid')): ?>

                    <?php while(has_sub_field('collection_images_grid')): ?>

                        <div class="collections">

                            <span><strong><?php the_sub_field('collection_detail'); ?></strong></span>

                            <a href="<?php the_sub_field('product_link'); ?>">

                                <img src="<?php the_sub_field('collection_image'); ?>"/>

                            </a>

                        </div>

                    <?php endwhile; ?>

                 <?php endif; ?>

        <?php endif; ?>

    <?php endwhile; ?>

我在acf灵活内容中使用中继器时遇到了一些小问题。所以如果我可以说在这种情况下有帮助的话,那就是使用一个变量来打印中继器数组的元素,如下所示:

    <?php if(get_row_layout() == "collection_title"): // layout: Collection Title ?>

                    <div>
                        <h4><?php the_sub_field("collection_title"); ?></h4>
                    </div>


                <?php elseif(get_row_layout() == "collection_images"): // layout: Collection Images ?>

    <?php if(get_sub_field('collection_images_grid')): ?> // considering that collections_images_grid are a repeater 

<?php $collection_image = get_sub_field('collection_images_grid');?>

    <?php echo $collection_image['url']; ?> <?php echo $collection_image['alt']; ?> //Or something that you would like to use [... and than the rest of code]
米俊喆
2023-03-14
            <?php

            // check if the flexible content field has rows of data
            if( have_rows('the_process') ){

            // loop through the rows of data
            while ( have_rows('the_process') ) : the_row();

            if( get_row_layout() == 'content' ){

            ?>
            <h1><?php the_sub_field('headline');?></h1>
            <h2 class="tagLine paddingBottom80"><?php the_sub_field('sub_headline');?></h2>

            <div class="steps clearAfter">

            <?php if(get_sub_field('process_steps')): ?>    
            <?php
            while(has_sub_field('process_steps')): 
            ?>



            <!--Step-->
            <div class="processStep rel boxSizing">

            <img src="images/ph.png" width="200" height="200" class="borderRadius50Perc imageBorder boxSizing" />
            <div class="processBox border1 padding20 clearAfter">
            <div class="third processNumber boxSizing font70 darkBlue">
            <div class="border1 padding20">
            <?php echo $i;?>
            </div>
            </div>
            <div class="twothird  boxSizing processContent">
            <h3><?php the_sub_field('step_headline'); ?></h3>
            <div class="processContentTxt grey">
            <?php the_sub_field('step_content'); ?>
            </div>
            </div>
            </div>
            </div>

            <!--Step-->
            <?php endwhile; ?>
            <?php endif; ?>             




            </div>


            <?php   
            }
            endwhile;
            }
            ?>
施子民
2023-03-14

您的<代码>

 类似资料:
  • 我试图在WP管理仪表板中呈现一个干净、易于使用的客户端后端字段提交,它可以将中继器字段数据排序为适当的选项卡内容。这是设置。 我试过的代码;

  • 我有一个按钮,当您单击它时,它会触发对一个函数的ajax调用,该函数应根据数据属性删除acf repeater字段中的一行。 这是函数,但有问题的行不会删除:

  • 我已经创建了一个名为“产品”的自定义帖子类型和一个名为“配料”的帖子类型中的自定义分类。 我已经添加了一个名为“成分INCI”的repeater字段和“成分INCI组”的子字段,该字段调用分类法“成分”中的值。 自定义中继器字段屏幕截图: 每个产品都有很多成分,我想展示一个产品所选成分的列表。这是我的模板代码: 此代码似乎破坏了输出。请帮忙!

  • 我遵循Github代码向ACF中继器字段添加更多负载。我有101个字段,但加载更多的字段无效。我也试着成为一个臭虫。Ajax响应为0。可能是通过Ajax,它不工作。我需要在函数上添加任何内容吗。php文件。Ajax响应为0。

  • 我有一个带有ACF中继器字段的分类。我正在尝试在自定义REST APIendpoint的回调中添加行,但没有运气。该字段的方案是: 我使用以下命令向字段中添加一行-但运气不佳: 知道我做错了什么吗?添加行是否只适用于Post而不适用于Term....?我怀疑那是真的...

  • 我正在使用高级自定义字段(ACF ),并尝试以编程方式向现有组(group_5621b0871e1b1)添加一个中继器,但它不起作用。相同的代码适用于文本字段,但不适用于repeater。 在我的插件中: 它显示了group_5621b0871e1b1组中的此错误: 我做错什么了吗?有没有可能以编程方式添加一个中继器。