子ページにあるときに表示される親ページのURLを取得します


9

私が子ページにいるときに親ページに戻るリンクを取得するにはどうすればよいですか?<a href="javascript:history.back()">Go Back</a>メソッドの代わりに適切なリンクを使用したいと思います。

質問と例: 3番目のレベルの子ページにいるときに、2番目のレベルの子ページのリンクを取得するにはどうすればよいですか?

Home > Parent Page > 1st Level Child Page > 2nd Level Child Page > 3rd Level Child Page

Home > Parent Page > 1st Level Child Page(this page link show up) > Current Page

Home > Parent Page(this page link show up) > Current Page

更新された行:私が質問しようとしていることをよりよく説明するために、上記の3つの例を追加しました。

この質問はについてではありませんbreadcrumbs。親ページのリンクが子ページにあるときに表示されるようにしたいのですが。

また、2番目のレベルの子ページにいるときに、1番目のレベルの子ページのリンクを取得するにはどうすればよいですか?

私がこの質問をしてBack To Previous Pageいるのは、別の子ページにいるときに別のレベルのリンクを作成したいからです。分からない場合は教えてください。

回答:


16

次のようなものを使用して、親ページのURLを取得できます(およびそのページタイトルを表示できます)。

<?php if ( $post->post_parent ) { ?>
 <a href="<?php echo get_permalink( $post->post_parent ); ?>" >
    <?php echo get_the_title( $post->post_parent ); ?>
 </a>
<?php } ?>

ループの外でこのコードを実行している場合(@BorisKuzmanovに感謝)、次のコードを使用します。

<?php global $post;
  if ( $post->post_parent ) { ?>
    <a href="<?php echo get_permalink( $post->post_parent ); ?>" >
    <?php echo get_the_title( $post->post_parent ); ?>
    </a>
<?php } ?>

1
動作しません。
ジョーンズ、2015

どういう意味ですか、機能しませんか?このコードはどこに配置しますか?
モンキーパズル

このコードを、リンクを表示するページに配置しました。しかし、それは何も示していません。
ジョーンズ、2015

sidebar.phpで試して、そこで機能するかどうかを確認してください。問題のページが親である場合にのみ、(ページの親)が表示されます。
モンキーパズル

1
ループの外でコードを実行している場合は、コードglobal $postの先頭に追加してみてください。
ボリス・クズマノフ2016年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.