東京都練馬区。Wordpressはおまかせ。印刷・ホームページなど販売促進のためのデザインを提案します。

デザイン事務所ダウンアンダー

営業
10:00-
19:00

WordPressで最上位の親ページスラッグを取得する。

     技術ノート    野村貞次

 固定ページを階層化し、最上位の親ページのスラッグによってヘッダ画像等を切り替えたい場合の対処メモ。

$slugに、親ページが無ければ自分自身の、親ページがあれば最上位のページのスラッグを代入します。

forループの方が良いと思うけれど、ループの終了条件がなぜかうまく動作せず。

  • <?php
  • $page = get_page(get_the_ID()); //ページを取得。
  • $slug = $page->post_name; //ページスラッグ取得。
  • //WordPressで最上位の親ページスラッグを取得する。
  • $parent = get_post_ancestors( $post->ID ); //$parentに親ページの配列を代入。
  • $i = 0;
  • while ($parent[$i]) {
  • $parentID = get_post($parent[$i]);
  • $i++; //0、1、2と、親の親を辿っていく。一番大きな数字が最上位の親。
  • }
  • if($parentID) { //親ページのIDがあれば・・・
  • $slug = $parentID->post_name; //$slugを最上位の親ページのスラッグで書き換え。
  • }
  • ?>

ancestorsはサブメニュー等、いろいろなところでキーワードとして役立ちますね。

 

     技術ノート    野村貞次

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

 こちらの記事も読んで見ましょう

WordPressで最上位の親ページスラッグを取得する。 東京都練馬区。Wordpressはおまかせ。印刷・ホームページなど販売促進のためのデザインを提案します。

Copyright©デザイン事務所ダウンアンダー,2014 All Rights Reserved.

ページ先頭へ