web屋の備忘録

ホームページ制作、webマーケティング、技術資料など

*

固定ページの自動作成(functions.php)する

      2016/01/12

テーマを選択した際、フロントページとブログのページを作成し、
表示設定を作成した固定ページに変更する。

functions.php

/*
 * 固定ページの作成および表示設定の変更
 */
function create_pages_and_setting() {
	if ( 'page' === get_option('show_on_front') ) {
		return;
	} else {
		if ( get_page_by_path('front-page') === null && get_page_by_path('blog') === null ) {
			$frontpage = wp_insert_post(
				array(
					'post_title'   => 'FrontPage',
					'post_name'    => 'front-page',
					'post_status'  => 'publish',
					'post_type'    => 'page',
					'post_content' => '',
				)
			);
			$blog = wp_insert_post(
				array(
					'post_title'   => 'Blog',
					'post_name'    => 'blog',
					'post_status'  => 'publish',
					'post_type'    => 'page',
					'post_content' => '',
				)
			);
			if ( $frontpage && $blog ) {
				update_option('show_on_front', 'page');
				update_option('page_on_front', $frontpage);
				update_option('page_for_posts', $blog);
			}
		}
	}
}
add_action('after_setup_theme', 'create_pages_and_setting');

 - WordPress