2018.04.25

【WordPress】親記事も全て表示させるパンくずリスト

Category: WordPress

Tags, ,

WordPressで2階層以上の親記事も全て取得し、表示させるパンくずリストのサンプルです。

<ul class="topic-pass txt-r lh-1">
	<li><a href="<?php echo esc_url( get_home_url() ); ?>/">TOP</a></li>
	<?php
		//記事の親ページIDを取得
		$this_post_parent_id = $post->post_parent;
	?>
	<?php if($this_post_parent_id): ?>
		<?php
			//2階層以上の親ページを全て取得
			$parent_topic_pass_list = array();
			$roop_post_parent_id = $this_post_parent_id;
			do {
				$parent_post = get_post($roop_post_parent_id);
				$parent_post_parent_id = $parent_post->post_parent;
				if($parent_post_parent_id) {
					$roop_post_parent_id = $parent_post_parent_id;
					$parent_topic_pass_list[] = '<li><a href="'.get_permalink($parent_post_parent_id).'">'.get_the_title($parent_post_parent_id).'</a></li>';
				} else {
					$roop_post_parent_id = false;
				}
			} while ($roop_post_parent_id);

			//取得した2階層以上の親ページを出力
			if(!empty($parent_topic_pass_list)) {
				$parent_topic_pass_list = array_reverse($parent_topic_pass_list);
				foreach($parent_topic_pass_list as $value){
					echo $value;
				}
			}
		?>
		<li><a href="<?php echo get_permalink($this_post_parent_id); ?>"><?php echo get_the_title($this_post_parent_id); ?></a></li>
	<?php endif; ?>
	<li><?php the_title(); ?></li>
</ul>

Category : WordPress