Comment puis-je obtenir un slug de page

16

Comment puis-je obtenir le slug d'une page ou d'un post?

JM au travail
la source

Réponses:

18

À l'intérieur de votre boucle, vous pouvez faire:


global $post;

echo $post->post_name;
Pomme reinette
la source
18

En dehors de la boucle:

<?php
$post_id = 11;
$post = get_post($post_id); 
$slug = $post->post_name;
?> 
Marcin
la source
1

Selon d'autres réponses, le slug est stocké dans la post_namepropriété. Bien qu'il soit accessible directement, je préfère la fonction (sous-utilisée) get_post_field()pour accéder aux propriétés de publication qui n'ont pas d'API appropriée pour elles.

Il nécessite une publication fournie explicitement et ne correspond pas par défaut à la publication actuelle.

Si vous voulez obtenir un slug du post en dehors de la boucle, utilisez:

$post_id = 20; //specify post id here
$post = get_post($post_id); 
$slug = $post->post_name;

Si vous voulez obtenir un slug du post de la boucle, utilisez:

global $post;
echo $post->post_name;
Ajay Tank
la source