/** *ACF预存帖子 * *@return int$post_id新帖子的id; */ 函数my_acf_pre_save_post($post_id){ 如果($postid!='new')返回$postiid; $post_data=数组( “post_title”=>“草稿文章”, “post_status”=>“草稿”, 'post_author'=>获取当前用户id() ); $post_id=wp_insert_post($post_data); 返回$post_id; } add_filter('acf/pre_save_post','my_acf_pre_savd_post],10,2);
/** *将过账数据添加到ACF表单过账 * *@返回void */ 函数my_acf_save_post($post_id){ //不要在ACF帖子类型上执行此操作 if(get_post_type($postid)==“acf”)返回; //获取字段 $fields=获取字段对象($post_id); //获取隐藏字段中的帖子类型默认值 $cpt=$字段[“form_field_key_post_type”][“值”]; //防止无限循环。。。 删除操作('acf/save_post','my_acf_save_phost'); //从表单中获取过帐数据 $post=数组( “ID”=>$post_ID, “post_type”=>$cpt “post_title”=>$字段['form_field_key_post_title']['value'], “post_content”=>$字段['form_field_key_post_content']['value'], “post_status”=>$字段['form_field_key_post_status']['value'] ); //更新帖子 wp_update_post($post); //继续保存操作 add_action('acf/save_post','my_save_phost'); //设置“新”帖子的返回URL $_POST['return']=add_query_arg(“已更新”,“真”,get_permalink($POST_id)); } add_action('acf/save_post','my_acf_save_phost',10,1);
/** *ACF预保存后 * *@return int$post_id新帖子的id; */ 函数my_acf_pre_save_post($post_id){ var_dump($post_id);// 输出:空 var_dump($_POST['POST_id']);// 输出:字符串(3)“新” 死亡(); 如果($postid!='new')返回$postiid; $post_data=数组( “post_title”=>“草稿列表”, “post_status”=>“草稿”, “post_author”=>获取当前用户id() ); $post_id=wp_insert_post($post_data); 返回$post_id; } 添加过滤器('acf/pre_save_post','mri_jb_acf_pre_save_post');
函数acf_form_head() { //全局变量 全局$post_id; //验证nonce if(isset($_POST['acf_nonce'])&&wp_verify_nonce($_POST['acf _nonce'],'input')) { var_dump($post_id);// 输出:空 //要保存的$post_id $post_id=$_post[“post_id”]; var_dump($post_id);// 输出:字符串(3)“新” //允许自定义保存 $post_id=应用过滤器('acf/pre_save_post',$post_id); var_dump($post_id);// 输出:NULL 死亡(); //保存数据 do_action('acf/save_post',$post_id); // ... } // ... }
函数save_post_lock($post_id) { $GLOBALS['acf_save_lock']=$post_id; 返回$post_id; }
函数save_post_unlock($post_id) { $GLOBALS['acf_save_lock']=假; 返回$post_id; }