ワードプレスの固定ページの階層で一番下の階層には同階層を表示する方法

ワードプレスの固定ページの階層で一番下の階層には同階層を表示する方法

  • 2018-03-18  最終更新日:2018-03-18

主にサイドメニューで固定ページを表示させようと考えておりました。それで子階層があれば子階層を表示させて一番下の階層になれば同一階層を表示する方法をご紹介致します。

サイドメニューに表示する際に便利かと思い調べてみました。


スポンサーリンク


固定ページで子階層があれば表示、なければ同一階層を表示

ワードプレスには結構便利な関数があるので利用してみます。サブページがあるかどうかをget_childrenという関数があったので使ってみました。添付ファイルを表示する場合はget_postsを使うより簡単そうです。表示はget_postsと同じです。

sidebar.phpに以下のように記載します。

<?php
	$args = array(
		'post_parent' => get_the_ID(),
		'post_type'   => 'page',
		'order'       => 'ASC',
		'orderby'     => 'menu_order'
	);
	$pages = get_children( $args );

	if ( count( $pages ) > 0 ) :?>
		<ul>
			<?php foreach ( $pages as $page ) :?>
				<li><a href="<?php echo esc_url( get_permalink( $page->ID ) );?>"><?php echo esc_html( $page->post_title );?></a></li>
			<?php endforeach; wp_reset_postdata(); ?>
		</ul>
	<?php else:?>
		<?php
			$args = array(
				'post_parent' => $post->post_parent,
				'post_type'   => 'page',
				'order'       => 'ASC',
				'orderby'     => 'menu_order',
				'posts_per_page'   => -1,
			);
			$pages = get_posts( $args );?>
			<ul>
		<?php foreach ( $pages as $page ) :?>
				<li><a href="<?php echo esc_url( get_page_link( $page->ID ) );?>"><?php echo esc_html( $page->post_title );?></a></li>
			<?php endforeach; wp_reset_postdata(); ?>
			</ul>
	<?php endif;?>

参考になれば幸いです。


∞Tadashi Suyama∞

wordpress menu 固定ページ 階層
  • このエントリーをはてなブックマークに追加
  • follow us in feedly

サイト内検索

最近の投稿

アイキャッチ
正規表現はじめの一歩

今回は正規表現です。たまにしか使わないのですぐに忘れてしまいますのでまとめておきます。 文字列の検索時にある条件にマッチしたものを表示させるものです。 エディターにも検索条件に正規表現という検...

07 Oct 2018

アイキャッチ
ワードプレス記事一括削除する方法

ワードプレスで記事を一括削除する方法が意外と簡単なことに気がつきました。記事を大量に削除する場合はあまりなかったのですが、調べてみたら簡単なことでした。 大量のデータをインポートする時に失敗し...

30 Sep 2018

アイキャッチ
メールはGmailに限る

大分間が空きました。。。さて今回はGmailをご紹介します。最近ではチャット系アプリが主流ですが、それでもやはりメールはなんだかんだで使います。いつも悩まされるのはスパムメールですが、Gmail...

25 Sep 2018

アイキャッチ
大山の大献灯・和傘灯りに行った感想

大山の大献灯・和傘灯りに初めて行って参りました。13日の夜に行ってきましたがこんなイベントをやっていることを知らなかったのでご紹介します。和傘のライトアップで日本の夏の雰囲気が良いですね。 大...

23 Aug 2018

アイキャッチ
出雲神話祭り・花火大会

お盆休み中に出雲の花火大会に行って参りました、今年は8月12日(日)でした、開催日は毎年違いますので確認しておきましょう。だいたいこのあたりだった気がします。8,000発の花火で例年13万人が来...

21 Aug 2018

著者

ウェブエンジニアのSUYAMAのブログです。

WEBに関することや個人的に関心のあることについて書きます。主に技術系ブログです。

タグクラウド

wordpress menu 固定ページ 階層
フッターイメージ