如何在保存自定义岗位类型时自动更新日期和时间

时间:2018-12-05 作者:Giulio

我需要在保存帖子时更新日期和时间。我在下面的线程中看到了代码,但我只需要对自定义帖子“new\\u cpt”中包含的帖子使用此技巧

有可能吗?

参考号:Update post date to modified date automatically

2 个回复
SO网友:RiddleMeThis

使用您的示例链接,我刚刚添加了一个IF来检查post\\u类型。

function reset_post_date_wpse_121565($data,$postarr) {
    // var_dump($data,$postarr);  die;// debug
    if($data[\'post_type\'] == \'new_cpt\'){
        $data[\'post_date\'] = $data[\'post_modified\'];
        $data[\'post_date_gmt\'] = $data[\'post_modified_gmt\'];
        return $data;
    }    
}
add_filter(\'wp_insert_post_data\',\'reset_post_date_wpse_121565\',99,2);

SO网友:Krzysiek Dróżdż

是的,这是可能的。您只需在更新日期之前检查帖子类型:

function reset_post_date_wpse_321084( $data, $postarr ) {
    if ( array_key_exists(\'ID\', $postarr) ) {
        $post_id = $postarr[\'ID\'];

        if ( \'new_cpt\' == get_post_type( $post_id ) ) {
            $data[\'post_date\'] = $data[\'post_modified\'];
            $data[\'post_date_gmt\'] = $data[\'post_modified_gmt\'];
        }
    }

    return $data;
}
add_filter( \'wp_insert_post_data\',\'reset_post_date_wpse_321084\', 99, 2 );

相关推荐