gpt4 book ai didi

wordpress - 在多站点安装上动态填充 ACF 字段( radio )

转载 作者:行者123 更新时间:2023-12-04 12:54:11 24 4
gpt4 key购买 nike

我正在尝试填充高级自定义字段的 radio 字段,从位于多站点安装的主博客中的自定义帖子类型中提取数据。

为了更好地理解,我制作了这个简单的流程图。

Flow

所以我创建了一个函数,以便从主博客中提取数据并在子站点上显示为单选项。

该函数看起来像这样,我使用了 this作为引用

function getctas($field) {
$field['choices'] = array();

switch_to_blog(1);

$args = array(
'post_type' => 'location_icons',
'posts_per_page' => '-1',
);

$ctas = new WP_Query( $args );

while ( $ctas->have_posts()) {
$ctas->the_post();

$choices = get_field('icon',false);

$choices = explode("\n", $choices);

foreach( $choices as $choice ):

$field['choices'][ $choice ] = '<img src="'.$choice.'"/>';

endforeach;

}
restore_current_blog();
return $field;

}
add_filter('acf/load_field/name=call_to_action_icon', 'getctas');

我得到了正确列出的选项(选项是图像),我成功地拉出了该字段 icon来自主博客并作为单选标签和值(value)。

我遇到的问题是,当我在 child 的页面模板上查询帖子时,一旦帖子被保存,我就会得到正确的图像,但博客 1 上的帖子标题重复了。理想的情况是:
  • 图片
  • 子博客帖子的标题
  • child 博客帖子的描述

  • 而我得到的是:
  • 正确图片
  • CTP 标题包含博客 1 上的图像
  • 无描述
  • 正确图片
  • 与上一个相同的标题
  • 无描述

  • 等等。

    如果你们中的任何人需要更多说明来帮助我解决这个问题,我很乐意进一步解释。

    最佳答案

    请申报global $switched;在切换到主博客之前,如果声明全局变量后不起作用,wp似乎不会将其切换回当前博客,请尝试这个

    在切换到主博客之前获取当前博客 ID $current_site =get_current_blog_id();
    一旦你完成。切换回使用

    switch_to_blog( $current_site );
    $GLOBALS['_wp_switched_stack'] = array();
    $GLOBALS['switched'] = FALSE;

    关于wordpress - 在多站点安装上动态填充 ACF 字段( radio ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24023680/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com