一直以来,都是用
global $post;
$id=$post->ID;
今天才发现,这是有问题的。
如果在page中,加一个shortcode,并且shortcode输出一个列表(比如某个分类的文章列表),那这个方法就无法得到page的ID。
就是说,如果在page中有循环,那么上边那个方法就无法获取page的ID。
列一下获取page的ID的几种方法:
1、global
受循环影响。
global $post;
$id=$post->ID;
2、get_the_ID()
受循环影响。
$postid = get_the_ID();
echo $postid;
3、get_queried_object_id()
不受循环影响。推荐。
$current_id = get_queried_object_id();
echo $current_id;
4、get_queried_object()
不受循环影响。
$object = get_queried_object();
$id = $object -> ID;
echo $id; 相关文章
观察
· 1 分钟阅读
DeepSeek Harness不止是一个Agent
亲测DeepSeek Harness:与Claude Code对比之后,发现DeepSeek自家Agent配上自家大模型更好用。它不止是一个Agent工具,更是开源、可以完全定制化成各种专用Agent产品的平台。
观察
· 1 分钟阅读
GPT 5.6发布:Codex升级为ChatGPT
GPT 5.6 发布后,Codex 升级为 ChatGPT。记录新版客户端整合聊天记录、支持手动编辑代码,以及 Luna、Terra、Sol 三个版本的使用感受。
观察
· 1 分钟阅读
AI UI Designer:如何快速搞明白你的产品长什么样
很多人用AI UI Designer并不是在设计UI界面,而是在探索自己想要做的产品。把模糊的产品想法交给AI,让它帮你规划页面、梳理流程、生成原型,让产品从模糊变清晰。