ACF 中继器子字段 Shuffle(wordpress 高级自定义字段)

Posted

技术标签:

【中文标题】ACF 中继器子字段 Shuffle(wordpress 高级自定义字段)【英文标题】:ACF repeater sub-fields Shuffle (wordpress advance custom field) 【发布时间】:2018-08-15 06:38:17 【问题描述】:

我知道如何在每次页面加载时通过在 function.php 中添加此代码来随机播放中继器:

// Function to randomize Advanced Custome Fields' Repeaters
function my_acf_load_value3( $value, $post_id, $field )

    shuffle($value);
    return $value;


// Randomize ACF Clients' Repeater
add_filter('acf/load_value/name=reapter-name', 'my_acf_load_value3', 10, 3);

请注意,上面的代码工作正常,它随机化了中继器,但我的问题是我不知道如何在中继器内洗牌 SUB FIELDS,有什么想法吗?谢谢。

【问题讨论】:

你能多解释一下你的问题吗 shuffle 是什么意思?你想随机化子字段吗?这可能会有所帮助***.com/questions/22011261/… 是的,我想随机化子字段。通过使用上面的函数,它可以随机化/随机化中继器,但不能随机化子字段。 print_r $value 显示了什么? 这可能会对您有所帮助。 support.advancedcustomfields.com/forums/topic/… 是的,谢谢,但实际上我在你提供的那个链接中得到了上面的代码,它工作正常,它随机化中继器但不是中继器的子字段,我想要的是随机化子-字段也是。无论如何谢谢:) 【参考方案1】:

您可以通过调用它的 orderby(parameter) 对子字段值进行洗牌。 我在下面添加我的自定义代码

'邮政', 'posts_per_page' => -1, 'meta_key' => '项目', 'orderby' => 'rand', 'meta_compare' => 'EXISTS' ); $query = new WP_Query($args); while ($query->have_posts()): $query->the_post(); if (have_rows('project')) 而(有行('项目')) the_row(); ?>

">">

希望对你有帮助

【讨论】:

以上是关于ACF 中继器子字段 Shuffle(wordpress 高级自定义字段)的主要内容,如果未能解决你的问题,请参考以下文章

搜索和显示 ACF 中继器子字段

ACF wordpres: Foreach: data-type = 'group'

表中的 ACF 中继器字段 - 在 PHP 模板中

ACF 中继器字段返回包含中继器计数的字符串

ACF 更新字段到嵌套转发器字段

Wordpress ACF 显示关系问题