描述
wordpress通過更改文章狀態來發表文章。
使用方法
- <?php?wp_publish_post(?$post_id?)??>
參數
$post_id
(整數)(必需)文章編號
默認值:None
返回的值
(空)
示例
注釋
用法:$wpdb
用法:通過do_action() 調用一下函數 $post_id和$post(文章相關數據):
edit_post()
save_post()
wp_insert_post()
修改記錄
自2.1.0版本后
源文件
wp_publish_post()位于wp-includes/post.php中。
- function?wp_publish_post($post_id)?{
- ?global?$wpdb;
- ?$post?=?get_post($post_id);
- ?if?(?emptyempty($post)?)
- ??return;
- ?if?(?'publish'?==?$post->post_status?)
- ??return;
- ?$wpdb->update(?$wpdb->posts,?array(?'post_status'?=>?'publish'?),?array(?'ID'?=>?$post_id?)?);
- ?$old_status?=?$post->post_status;
- ?$post->post_status?=?'publish';
- ?wp_transition_post_status('publish',?$old_status,?$post);
- ?
- ?foreach?(?(array)?get_object_taxonomies('post')?as?$taxonomy?)?{
- ??$tt_ids?=?wp_get_object_terms($post_id,?$taxonomy,?array('fields'?=>?'tt_ids'));
- ??wp_update_term_count($tt_ids,?$taxonomy);
- ?}
- ?do_action('edit_post',?$post_id,?$post);
- ?do_action('save_post',?$post_id,?$post);
- ?do_action('wp_insert_post',?$post_id,?$post);
- }