【问题标题】:advanced custom fields - insert post programmatically and update repeater fields高级自定义字段 - 以编程方式插入帖子并更新转发器字段
【发布时间】:2017-04-04 00:47:09
【问题描述】:

我对插件“高级自定义字段”有疑问。我遵循的步骤是:

1.以编程方式创建帖子

$id_post = wp_insert_post(array(
    'post_type'=>$post_type,
    'post_title'=>$post_title, 
    'post_status' => 'publish'
));

2。更新与“post_type”关联的所有转发器字段

if( have_rows('cliente',$id_post) ) {
    $i = 0;
    while( have_rows('cliente',$id_post) ) {
       the_row();
       update_sub_field('id', 333);
    }
}

问题在于第 2 点,事实上,当我使用 Wordpress 的界面(带有按钮)创建帖子并在我的代码中手动插入该帖子的 id 时,它可以完美运行..

但是当我在第二点以编程方式创建帖子时,即使我以编程方式创建了该帖子的编号,也无法识别转发器字段。

仅在使用“插入新”按钮创建帖子时有效。

你有什么建议吗?

谢谢大家!

【问题讨论】:

  • 我已经解决了这个问题!问题与字段的名称有关。您必须使用密钥而不是名称。我现在的代码是 $cliente_data = array(array("id" => 33)); update_field('field_582c2ed4fab65', $cliente_data, $id_post );
  • 感谢您的评论!你拯救了我的一天。
  • @Andrea 您能否通过示例将您的评论作为接受的答案。
  • @RauliRajande 完成!让我处理这个例子,因为 2 年过去了:))

标签: php wordpress advanced-custom-fields


【解决方案1】:

我已经解决了这个问题!问题与字段的名称有关..您必须使用密钥而不是名称。我现在的代码是这样的

$cliente_data = array( array( "id"  => 33 ) ); 
update_field('field_582c2ed4fab65', $cliente_data, $id_post );

【讨论】:

    【解决方案2】:

    请参阅以编程方式解释创建和更新字段的教程。 http://www.pearlbells.co.uk/insert-udpate-wordpress-post-programmatically/

    $newIds = wp_insert_post( array(
                'post_title' => $postCSVContent['1'],
                'post_content' => $postCSVContent['2'],
                'post_type' => 'doors',
                'post_status' => 'publish',        
                'post_author'   => 1,
                'post_parent' => $parentId
        ));
    
        updateAcf( $postCSVContent , $newIds );
    

    更新 acf 图像转发器字段: http://www.pearlbells.co.uk/insert-update-acf-image-repeater-field-programmatically/

    【讨论】:

      猜你喜欢
      • 2022-01-24
      • 2015-08-24
      • 2018-05-19
      • 1970-01-01
      • 2017-08-26
      • 2019-06-21
      • 2013-01-15
      • 2017-05-10
      • 2016-06-25
      相关资源
      最近更新 更多