Die URL der übergeordneten Seite wird angezeigt, wenn sie sich auf untergeordneten Seiten befindet

9

Ich möchte das fragen, wie ich den Link zurück zur übergeordneten Seite bekomme, wenn ich auf den untergeordneten Seiten bin. Ich würde lieber einen richtigen Link anstelle einer <a href="javascript:history.back()">Go Back</a>Methode verwenden.

Frage & Beispiel: Wie kann ich den Link zur untergeordneten Seite der 2. Ebene erhalten, wenn ich auf der untergeordneten Seite der 3. Ebene bin?

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

Aktualisierte Zeile: Ich habe diese drei Beispiele oben hinzugefügt, um besser zu erklären, was ich zu fragen versuche.

Bei dieser Frage geht es nicht darum breadcrumbs. Ich möchte nur, dass der Link der übergeordneten Seite angezeigt wird, wenn er auf untergeordneten Seiten angezeigt wird.

Und wie kann ich den Link zur Kinderseite der ersten Ebene erhalten, wenn ich mich auf der Kinderseite der zweiten Ebene befinde?

Der Grund, warum ich diese Frage stelle, ist, dass ich einen Back To Previous PageLink für eine andere Ebene erstellen möchte, wenn ich mich auf einer anderen untergeordneten Seite befinde. Bitte sag es mir, wenn du es nicht verstehst.

Jornes
quelle

Antworten:

16

Sie können so etwas verwenden, um die URL der übergeordneten Seite abzurufen (und den Seitentitel anzuzeigen):

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

Wenn Sie diesen Code außerhalb der Schleife ausführen (danke @BorisKuzmanov ), verwenden Sie Folgendes :

<?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 } ?>
Affenpuzzle
quelle
1
es funktioniert nicht
Jornes
Was meinst du damit, es funktioniert nicht? Wo setzen Sie diesen Code?
Monkey Puzzle
Ich habe diesen Code auf der Seite eingefügt, auf der der Link angezeigt werden soll. Aber es zeigt nichts.
Jornes
Probieren Sie es in Ihrer sidebar.php aus und prüfen Sie, ob es dort funktioniert. Es wird nur etwas angezeigt (die übergeordnete Seite), wenn die betreffende Seite eine übergeordnete Seite hat.
Monkey Puzzle
1
Wenn Sie den Code außerhalb einer Schleife ausführen, versuchen Sie, ihn global $postam Anfang Ihres Codes hinzuzufügen .
Boris Kuzmanov