Getting page slug

时间:2017-10-10 作者:Zorro Here

所以,如果我搜索“How to get current page slug”,有很多结果建议使用以下代码段。

global $post;
$post_slug = $post->post_name;
echo $post_slug;
但问题是,如果我在有默认循环的页面上使用它,它将返回默认循环中的第一篇文章。我错过了什么?这个答案似乎被全世界所接受,我做错了什么吗?

1 个回复
SO网友:Ihor Vorotnov

如果您在循环中,则不需要访问全局$post,您已经在本地范围中有了可访问的$post变量,该变量保存当前循环迭代中的数据。

如果你在循环之外,那么你需要先访问global$post,它将保存剩下的任何数据(通常是循环中的第一篇文章)。

据我所知,您试图在自定义循环(非main)中输出当前帖子的slug。在这种情况下,只需使用$post->post_name;

结束

相关推荐

当我在帖子的metabox中使用WP_QUERY时,Slug正在更改

我想使用一个元框,允许作者在所有帖子编辑页面中选择相关帖子。。代码在发布帖子时起作用,元数据正在保存。。但《华盛顿邮报》的头条新闻正在发生变化。例如,我的帖子的url是“www.example.com/qwerty”。在我通过更改相关帖子发布帖子后,url是“www.example.com/asdfgh-2”。“asdfgh”是前一篇文章的鼻涕虫。我很困惑,这是一个很奇怪的问题。我几天来一直在努力解决这个问题,但我做不到。。我的代谢箱在下面。在元数据库中使用循环是否错误?<div class=\"m