マルチサイト環境でHELLO WORLDを編集した状態で新規セットアップを行う
wp_insert_postに編集したい記事のIDを渡せば編集可能
WordPressマルチサイト環境下でのブログの新規セットアップ処理は、wpmu_new_blogをフックすることで可能になる。
初期の状態では、HELLO WORLDという記事が暫定的に上がっているので、このページを新規セットアップ時に編集してみることにした。具体的には以下の方法で対応可能。
function wpsetup( $blog_id ) { switch_to_blog( $blog_id ); $post = array( 'ID' => 1, 'post_content' => get_bloginfo()."の最初の投稿です。編集もしくは削除してブログを始めてください !", 'post_status' => 'publish', 'post_title' => get_bloginfo()." WORLD!", 'post_type' => 'post', ); wp_insert_post( add_magic_quotes( $post ) ); restore_current_blog(); } add_action('wpmu_new_blog', 'wpsetup');
この中で、
switch_to_blogからrestore_current_blogまでの間に、セットアップしたい処理を追記していくことになり、今回はwp_insert_postで記事を編集している。
本来、wp_insert_postは記事を新規に投稿する処理を行うものだが、引数に記事IDを渡すことで編集することも可能になる。HELLO WORLDの記事IDは1なので1を指定することでHELLO WORLDを編集している。
wp_insert_postについての公式ページでは、上で利用した引数以外の情報も載っているので利用を検討している人は参照してみてほしい。