How can I get page slug

How can I get the slug of a page or post?

Related posts

Leave a Reply

4 comments

  1. As per other answers slug is stored in post_name property. While it could be accessed directly I prefer the (underused) get_post_field() function for access post properties which have no proper API for them.

    It requires post provided explicitly and doesn’t default to the current one.

    If you want to get slug of the post outside the loop then use:

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

    If you want to get slug of the post from the loop then use:

    global $post;
    echo $post->post_name;