我试图通过wp\\u insert\\u post\\u数据过滤器更改帖子的父级,但我没有任何运气。在下面的示例中,我将用要设置的id替换任何“父”引用。
function my_insert_post_data($data, $postarr){
$data["post_parent"] = 123;
$postarr["parent_id"] = 123;
$postarr["post_parent"] = 123;
error_log(print_r($data,true));
error_log(print_r($postarr,true));
}
add_filter( \'wp_insert_post_data\' , \'my_insert_post_data\' , \'99\', 2 );
当我记录对象时,我看到属性已经设置好了,但从未写入数据库。
最合适的回答,由SO网友:Eugene Manuilov 整理而成
为了使其正常工作,您需要返回更新的数据:
function my_insert_post_data($data, $postarr){
$data["post_parent"] = 123;
$postarr["parent_id"] = 123;
$postarr["post_parent"] = 123;
error_log(print_r($data,true));
error_log(print_r($postarr,true));
return $data;
}
add_filter( \'wp_insert_post_data\' , \'my_insert_post_data\' , 99, 2 );