*post_statusを変更する
<?php $my_post= array( 'ID'=> 1502,'post_status'=> 'private' ); wp_update_post($my_post); ?>
独自のステータスを作成する
function my_custom_post_status(){
register_post_status( 'unread', array(
'label'=> _x( 'Unread', 'post' ),
'public'=> true,
'exclude_from_search'=> false,
'show_in_admin_all_list'=> true,
'show_in_admin_status_list'=> true,
'label_count' => _n_noop( 'Unread <span class="count">(%s)</span>', 'Unread <span class="count">(%s)</span>' ),
) );
}
add_action( 'init', 'my_custom_post_status' );
http://codex.wordpress.org/Function_Reference/register_post_status(@codex)