WordPress/サイトマップを作る

WordPressで、プラグインを使わずにサイトマップを作成する。

functions.phpに記述

/*	サイトマップ
/*---------------------------------------------------------*/
//カテゴリーと投稿をツリー構造で取得(引数:親カテゴリID, カテゴリーのulタグの表示フラグ)
function getCategoryAndPostTree($parent_id = 0, $cat_ul_use_flag = 1){
	$numberposts = 20;	//投稿の表示件数
	$return = "";

	//カテゴリー取得
	$categories = get_terms('category','parent='.$parent_id.'&hide_empty=0&orderby=order&order=asc');

	if($categories){
		if($cat_ul_use_flag == 1) $return .= "<ul>\n";
		foreach($categories as $category_values){
			$return .= '<li><a href="'.get_category_link($category_values->term_id).'" >'.$category_values->name."</a>\n";

			//投稿取得
			add_filter('pre_option_category_children', 'my_category_children');
			$posts = get_posts(array('numberposts'=>$numberposts, 'category'=>$category_values->term_id));
			remove_filter('pre_option_category_children', 'my_category_children');
			
			$arg_ul_use_flag = 1;
			if($posts){
				$return .= "<ul>\n";
				foreach($posts as $post_values){
					$return .= '<li><a href="'.get_permalink($post_values->ID).'">'.$post_values->post_title."</a></li>\n";
				}
				$arg_ul_use_flag = 0;
			}
			$return .= getCategoryAndPostTree($category_values->term_id, $arg_ul_use_flag);
			if($posts) $return .= "</ul>\n";
			$return .= "</li>\n";
		}
		if($cat_ul_use_flag == 1) $return .= "</ul>\n";
	}

	return $return;
}

//サブカテゴリに所属する投稿記事を排除する
function my_category_children( $return ) {
	return array();
}

//サイトマップ
function simple_sitemap(){
	global $wpdb;

	echo '<div id="sitemap">';

	//カテゴリと投稿のツリー(このテーマでは投稿は表示しないのでコメントアウト)
/* 	$get_category_and_post .= getCategoryAndPostTree(0);
	echo $get_category_and_post;  */

	
	//固定ページのツリー
	$args = array('depth'        => 0,
		'show_date'    => NULL,
		'date_format'  => get_option('date_format'),
		'child_of'     => 0,
		'exclude'      => NULL,
		'include'      => NULL,
		'title_li'           => '',
		'echo'         => 1,
		'authors'      => NULL,
		'sort_column'  => 'menu_order, post_title',
		'link_before'  => NULL,
		'link_after'   => NULL,
		'exclude_tree' => NULL ); 

	echo '<ul>';
		wp_list_pages($args);
	echo '</ul>';
	
	echo '</div>';
}
add_shortcode('sitemap', 'simple_sitemap');

サイトマップの固定ページを作成

[[sitemap]]
と記入するだけ。

お知らせ

直方ロータリークラブ様のホームページ

直方ロータリークラブ様のホームページを制作させていただきました。 ↓ 直方ロータリークラブ様のホーム … 続きを読む

2023.08.01

多賀神社様(福岡県直方市)のホームページ

多賀神社様(福岡県直方市)のホームページを制作させていただきました。 ↓ 多賀神社様のホームページへ … 続きを読む

2022.09.01

FC直方様のホームページ

FC直方様(福岡県直方市の少年サッカーチーム)のホームページを制作させていただきました。 ↓ FC直 … 続きを読む

2022.07.01

社会福祉法人 つくも会様のホームページ

社会福祉法人 つくも会様のホームページを制作させていただきました。 ↓ 社会福祉法人 つくも会様のホ … 続きを読む

2022.03.01

飯塚ガス株式会社様のホームページ

飯塚ガス株式会社様のホームページをリニューアルさせていただきました。 ↓ http://www.ii … 続きを読む

2021.08.11

直方市シルバー人材センター様のホームページ

直方市シルバー人材センター様のホームページをリニューアルさせていただきました。 ↓ https:// … 続きを読む

2021.07.01

宗像歯科医師会様のホームページ

宗像歯科医師会様のホームページをリニューアルさせていただきました。 ↓ https://dental … 続きを読む

2021.07.01

猫のイラスト

猫のイラストです。 … 続きを読む

2020.02.05

チラシのデザイン・制作サービスはじめました

伝えたいことを、わかりやすく! スキルのフリーマーケット「coconala(ココナラ)」でチラシのデ … 続きを読む

2019.08.06

飯塚医師会様のホームページ作成

一般社団法人 飯塚医師会様のホームページを作成。リニューアルオープンしました。 ↓ http://i … 続きを読む

2019.04.11

㈱シンシアテクノス様のサイト開設

㈱シンシアテクノス様のサイトを開設しました。 ↓ https://sincere-tecnos.co … 続きを読む

2019.04.01

いいづか看護師転職バンク様のサイト開設

「いいづか看護師転職バンク」様のホームページを開設しました。 飯塚市周辺(筑豊地区)で転職を考えてい … 続きを読む

2018.12.01

2019年カレンダー

2019年のオリジナルカレンダーを作りました。 今年も猫のイラストのデザインにしました。 お世話にな … 続きを読む

2018.12.04

猫の昼寝のイラスト

illustratorは便利なソフトです。 いろんな種類の猫を描くのもお茶の子さいさい。(ひさしぶり … 続きを読む

2018.09.26

猫のイラストを描く

仕事が一段落ついて時間ができたので、illustratorを使って猫のイラストを描いています。 … 続きを読む

2018.09.25

ネコのアルバム

今年は可愛い猫との出会いがありました。 フリーソフトでスライドショーを作りました。 猫日和 チビ猫“ … 続きを読む

2017.12.19

絵時計