WordPress3.5で親ページのIDを取得するget_post_ancestors()でエラー発生


投稿日:2013年1月13日
  • 2
  • 0



ローカルとグローバルを意識しよう

wp_get_post_ancestors

以前の投稿」で紹介しましたが、当サイトでは独自のパンくずリストにしていたのですが、WordPressを3.5にアップデートしたところエラーが発生。
現在のページの親ページ(先祖)のIDを取得する「get_post_ancestors()」が原因でエラーが出ていました。


エラーメッセージと対処法

Warning: array_reverse() expects parameter 1 to be array, boolean given in

調べると、どうやら正しくは「global $post;」でグローバル変数を取得しないといけなかったようです。(3.5以前のバージョンでは書かなくても取得できていました)

以下のコードに変更したところ、無事に出力されるようになりました。急にエラーが出て困っている方は試してみてください。

function the_breadcrumb() {
	if (!is_home()) {
		echo '<a href="'.home_url().'">Home</a>';
	}
	if (is_category() || is_single() || is_archive() ) {
		echo " &gt; [";
		the_taxonomies(", ");
		echo "]";
	}
	if (is_single()) {
		echo " &gt; ";
		echo '現在のページ';
	} elseif (is_page()) {
	echo ' &gt; ';
	global $post; //ここに追加
	$ancestors = get_post_ancestors($post->ID);
		foreach (array_reverse($ancestors) as $parid) {
		$title = get_page($parid)->post_title;
		echo '<a href="'.get_page_link($parid).'" title="'.$title.'">'.$title.'</a> &gt; ';
	}
	echo '現在のページ';
	}
}

現在のページを共有する



現在のページに関連する記事

functionsを使ってパンくずリストに複数のカテゴリを加える方法 functionsを使ってパンくずリストに複数のカテゴリを加える方法
WordPress3.5で親ページのIDを取得するget_post_ancestors()でエラー発生 もう覚えなくても大丈夫!?WordPressの条件分岐タグの使い方まとめ
WordPress3.5で親ページのIDを取得するget_post_ancestors()でエラー発生 貼るだけ簡単!アクセスが倍増するWordPress用OGPコード
WordPressでページのヘッダにあるアイキャッチ画像を非表示にする方法 WordPressでページのヘッダにあるアイキャッチ画像を非表示にする方法
WordPress3.5で親ページのIDを取得するget_post_ancestors()でエラー発生 Popular Postsをカスタマイズして、人気記事のサムネイルを表示する方法
WordPress3.5で親ページのIDを取得するget_post_ancestors()でエラー発生 WordPressでコメント機能を投稿タイプや時間経過と共に停止する方法
WordPress3.5で親ページのIDを取得するget_post_ancestors()でエラー発生 WordPressの新・旧ループからカスタムクエリ・アーカイブまで徹底解説

おすすめの記事

Google Feed APIの代替手段としてjQueryだけでRSSを表示する方法

Google Feed APIの代替手段としてjQueryだけでRSSを表示する方法

PukiWikiで5段階評価を付けるプラグインを作成しました

PukiWikiで5段階評価を付けるプラグインを作成しました

WordPressの最速キャッシュを探せ!APC、memcached、Transients APIを比較

WordPressの最速キャッシュを探せ!APC、memcached、Transients…

インストールだけじゃない!yumの設定から便利な使い方まで徹底的に解説

インストールだけじゃない!yumの設定から便利な使い方まで徹底…

NexusFontが重い場合はWindows Font Cache Serviceを無効にしよう

NexusFontが重い場合はWindows Font Cache Serviceを無効にしよう

WordPressでアイキャッチ画像をサムネイルとして一覧ページに表示する方法

WordPressでアイキャッチ画像をサムネイルとして一覧ページに表…

WordPressのサイトをHTTPS化して学ぶLet’s Encryptの使い方

WordPressのサイトをHTTPS化して学ぶLet’s Encryptの使い方

SNSのカウントをキャッシュするWordPressのプラグインを作成しました

SNSのカウントをキャッシュするWordPressのプラグインを作成し…


コメントを残す

コメントは認証制のため、すぐには反映されません。

プログラミングに関する質問は「日本語でプログラミングの悩みを解決するQ&Aサイト sukegra」をご利用ください。