从get_field_objects() - ACF中对值进行排序

时间:2016-02-24 11:22:58

标签: php sorting advanced-custom-fields

我在每个名为" product"的自定义帖子类型中都有多个自定义字段,我用#inner_div { width: 100%; height: 25%; background: blue; color: white; top: 50%; position: relative; transform: translate(0, -50%); } 这样抓取这些字段:

get_field_objects()

我的客户希望能够按菜单顺序对字段进行排序(因此他可以拖放插件区域)。 但我在这里没有看到任何订购文件 - http://www.advancedcustomfields.com/resources/get_field_objects/

知道顺序是 - 最后创建的字段是最后一个。 对此有什么好的解决方案吗?

1 个答案:

答案 0 :(得分:0)

您可以做的是使用repeater类型的acf。

这样,您的客户端就可以根据需要添加任意数量的字段,并通过拖放操作对其进行排序。

如果您需要知道每个字段的“类型”(例如更改样式),您可以在所有类型的字段中添加一个选择字段(在转发器字段中)。

然后你会有这样的事情:

enter image description here

这样可以显示字段:

<?php $fields = get_field('fields'); ?>
<?php if ( !empty($fields) ) : ?>
    <dl class='clearfix'>
        <?php foreach ( $fields as $field ) : ?>
            <dt><?= $field['label']; ?></dt><dd><?= $field['value']; ?></dd>
            <br class="clear">
        <?php endforeach; ?>
    </dl>
<?php endif; ?>