Ottenere l'URL della pagina genitore da mostrare quando si è nelle pagine figlie
Vorrei chiedere come ottenere il link di ritorno alla pagina genitore quando mi trovo nelle pagine figlie? Preferirei utilizzare un link appropriato invece del metodo <a href="javascript:history.back()">Torna Indietro</a>.
Domanda ed Esempio: Come posso ottenere il link della pagina figlia di 2° livello quando mi trovo nella pagina figlia di 3° livello?
Home > Pagina Genitore > Pagina Figlia 1° Livello > Pagina Figlia 2° Livello > Pagina Figlia 3° Livello
Home > Pagina Genitore > Pagina Figlia 1° Livello(mostra questo link) > Pagina Corrente
Home > Pagina Genitore(mostra questo link) > Pagina Corrente
Riga aggiornata: Ho aggiunto questi tre esempi sopra per spiegare meglio cosa sto cercando di chiedere.
Questa domanda non riguarda i breadcrumbs. Vorrei semplicemente ottenere il link della pagina genitore da mostrare quando si è nelle pagine figlie.
E come posso ottenere il link della pagina figlia di 1° livello quando mi trovo nella pagina figlia di 2° livello?
Il motivo per cui faccio questa domanda è che voglio creare un link Torna alla Pagina Precedente per diversi livelli quando mi trovo in diverse pagine figlie. Per favore, ditemi se non capite.
Puoi utilizzare qualcosa come questo per ottenere l'URL della pagina genitore (e mostrarne il titolo):
<?php if ( $post->post_parent ) { ?>
<a href="<?php echo get_permalink( $post->post_parent ); ?>" >
<?php echo get_the_title( $post->post_parent ); ?>
</a>
<?php } ?>
Se stai eseguendo questo codice al di fuori del loop (grazie @BorisKuzmanov), allora utilizza questo:
<?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 } ?>
Ho inserito questo codice nella pagina dove voglio che appaia il link. Ma non mostra nulla.
Jornes
Provalo nel tuo sidebar.php e vedi se funziona lì. Mostrerà qualcosa (la pagina genitore) SOLO quando la pagina in questione HA un genitore.
Monkey Puzzle
Se stai eseguendo il codice al di fuori di un loop, prova ad aggiungere global $post all'inizio del tuo codice.
Boris Kuzmanov
@BorisKuzmanov, Sì! Ho testato nuovamente questo codice. Funziona. Grazie!
Jornes
Se utilizzo uno dei due frammenti di codice su page.php (ad esempio), funzionano entrambi, entrambi al di fuori di un loop... non dovrebbero? O dipende dal tuo setup/tema? E grazie comunque, fantastico! :)
user1406440