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

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

  • 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

サイト内検索

最近の投稿

アイキャッチ
Perlで500エラー!原因は文字コードだけでなく改行コード

あまりcgiは使いたくないのですが使わざるを得ない時があります。仕方なく設置するのですがエラーが出ちゃうんです。なんか知らないけど。 ありがちなのがパーミッションとかパスが問題になるんのですけど...

19 Feb 2022

アイキャッチ
WordPressの標準メールアドレスの変更方法

今回はワードプレス専用のアドレス変更方法をご紹介します。ワードプレスのアドレスはwordpress@~という形で送られてきますが変更可能です。 functions.phpに記載するのですがプラグ...

12 Feb 2022

アイキャッチ
LibSass(node-sass)からDartSassに移行の手順

Sassの遷移は多すぎる今日この頃 Ruby Sass→LibSass→DartSass(いまここ) Ruby SassはSassの最初の実装でしたが、2019年3月26日にサポートが終了しま...

22 Jan 2022

アイキャッチ
明けましておめでとうございます

明けましておめでとうございます。 本年も何卒よろしくお願いいたします。 年末年始は雪でしたね、そこまで積もっていませんが。 {% include adsensearticle.html...

10 Jan 2022

アイキャッチ
そろそろvuejs始める

最近はjQueryよりvueで書いた方が楽ではないかと思い学習中です。 そもそもVuejsはドキュメントが日本語対応なので試しやすいし情報も豊富なので学習しやすいです。 3大フレームワークと呼...

02 May 2021

著者

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

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

タグクラウド

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