How can I get page slug

时间:2011-03-08 作者:JM at Work

我怎样才能得到一个页面或帖子的头条?

4 个回复
最合适的回答,由SO网友:Pippin 整理而成

在循环内部,您可以执行以下操作:


global $post;

echo $post->post_name;

SO网友:jmarceli

另一种选择是通过post ID获取slug:

$slug = get_post_field( \'post_name\', $post_id );
以下是有关get_post_field https://codex.wordpress.org/Function_Reference/get_post_field

SO网友:Marcin

Outside the loop:

<?php
$post_id = 11;
$post = get_post($post_id); 
$slug = $post->post_name;
?> 
SO网友:Ajay Tank

根据其他答案,slug存储在post_name 所有物虽然可以直接访问,但我更喜欢(未充分使用)get_post_field() 用于访问没有适当API的post属性的函数。

它需要显式提供post,而不是默认为当前post。

如果您想将立柱的slug置于循环之外,请使用:

$post_id = 20; //specify post id here
$post = get_post($post_id); 
$slug = $post->post_name;
如果您想从循环中获取帖子的slug,请使用:

global $post;
echo $post->post_name;

结束

相关推荐