Come ottenere lo slug di una pagina

8 mar 2011, 04:55:29
Visualizzazioni: 86.3K
Voti: 24

Come posso ottenere lo slug di una pagina o un articolo?

0
Tutte le risposte alla domanda 4
0
52

Un'altra opzione è ottenere lo slug tramite l'ID del post:

$slug = get_post_field( 'post_name', $post_id );

Qui trovi maggiori informazioni su get_post_field https://codex.wordpress.org/Function_Reference/get_post_field

23 nov 2016 09:59:14
0
23

All'interno del tuo loop puoi fare:


global $post;

echo $post->post_name;

8 mar 2011 05:08:34
0
19

Fuori dal loop:

<?php
$post_id = 11;
$post = get_post($post_id); 
$slug = $post->post_name;
?> 
8 mar 2011 07:27:11
0

Come indicato in altre risposte, lo slug è memorizzato nella proprietà post_name. Anche se potrebbe essere accessibile direttamente, preferisco la funzione (poco utilizzata) get_post_field() per accedere alle proprietà del post che non hanno un'API dedicata.

Questa funzione richiede che il post sia fornito esplicitamente e non usa quello corrente come default.

Se vuoi ottenere lo slug di un post al di fuori del loop, utilizza:

$post_id = 20; //specifica l'ID del post qui
$post = get_post($post_id); 
$slug = $post->post_name;

Se vuoi ottenere lo slug di un post all'interno del loop, utilizza:

global $post;
echo $post->post_name;
24 lug 2017 09:14:24