Come ottenere l'URL di una pagina tramite l'ID della pagina?

12 mar 2015, 18:23:36
Visualizzazioni: 39.2K
Voti: 6

Ho provato a utilizzare get_page_link('page-id') e get_permalink('page-id') ma si è verificato l'errore seguente.

Fatal error: Call to a member function get_page_permastruct() on null in ...

Come posso ottenere l'URL di una pagina conoscendo solo il suo ID?

3
Commenti

Lo stai scrivendo così con 'page-id'? Devi passargli un id effettivo e dovrebbe funzionare. get_permalink(4); oppure una variabile con l'id get_permalink($id);

jzatt jzatt
12 mar 2015 18:29:03

sì, lo so. Ho scritto 'page-id' come esempio. Il problema è che non funziona con un id di pagina esistente. L'ho provato anche in una nuova installazione di WP.

Maverick Maverick
12 mar 2015 18:32:45

Bene, non si può mai essere sicuri quindi ho pensato di chiedere almeno! :)

jzatt jzatt
13 mar 2015 11:49:17
Tutte le risposte alla domanda 2
0
12

Probabilmente stai ricevendo quell'errore perché WordPress non ha ancora caricato il globale $wp_rewrite per qualche motivo. O qualcosa lo ha disattivato, oppure stai tentando di eseguire quelle funzioni prima che WordPress abbia la possibilità di caricarlo.

Se stai cercando di fare questo in un plugin o nel file functions.php del tuo tema, assicurati di essere all'interno di una funzione agganciata a after_setup_theme o un hook che viene eseguito in un secondo momento. Per esempio:

function get_url_of_page_id_165() {
    return get_permalink( 165 );
}
add_action( 'after_setup_theme', 'get_url_of_page_id_165' );
12 mar 2015 18:42:59
2
<?php
$booking_url = get_permalink('15551'); // Ottiene l'URL permanente del post con ID 15551
echo $booking_url; // Stampa l'URL di prenotazione
?>
26 ott 2021 07:00:16
Commenti

OP ha detto che aveva già provato get_page_link e get_permalink e non funzionava. Quindi penso che la domanda sia davvero spiegare il messaggio di errore, non quale API chiamare.

Rup Rup
26 ott 2021 11:21:45

Ho usato questo. Funziona bene, non c'è bisogno di creare alcuna funzione.

chirag p chirag p
4 ott 2022 16:31:02