在save_post之后修改自定义字段

时间:2012-04-19 21:37:54

标签: wordpress post custom-fields

在我的自定义帖子类型中,一旦用户保存帖子,有没有办法检查其中一个字段的值并更新它?我将插入的值将取决于帖子的ID,因此如果是新帖子,则需要使用save_post

1 个答案:

答案 0 :(得分:1)

是的,保存或更新帖子$_POST后,您可以获得global $postusing save_post hook as you mentioned in your question的所有数据

add_action( 'save_post', 'afterSavePost' );
function afterSavePost($pid)
{
    $postId=$pid; 
    // or
    global $post;
    $postId=$post->ID;
    $postTitle=$post->post_title; 
    // or
    $postId=$_POST['ID'];
    $postTitle=$_POST['post_title']; 
}

您提到了custom field,在这种情况下,您可以使用

$yourCustomField=get_post_meta($postId, 'your_custom_field',true); // get a custom field

$yourCustomField="New value";
update_post_meta($postId, 'your_custom_field', $yourCustomField); // update a custom field