While within The Loop, WordPress provides many functions to quickly access the properties of the Post – but it doesn’t include a built-in function to get the slug for the current Post (although, admittedly, you could simply use $post->post_name). This functionality can be easily included by adding the following two mini-functions within the functions.php file.
function get_the_slug() {
global $post;
return $post->post_name;
}
function the_slug() {
echo get_the_slug();
}
Update (26 August 2012)
To be absolutely correct, to avoid possible conflicts with other core WordPress or third-party functions, the two sample functions should really be prefixed with a unique identifier, e.g. cornflowerdesign_get_the_post(). I would also recommend wrapping the functions with a function_exists() check, like so.
if ( !function_exists( 'cornflowerdesign_get_the_slug' ) ) {
function cornflowerdesign_get_the_slug() {
global $post;
return $post->post_name;
}
}