WordPress 获取当前页面 ID 的几大方法

https://zhangzifan.com/wordpress-get-id.html

 

在很多的 WordPress 主题或者插件功能的开发中,我们总是需要获取到 WordPress 给每个页面定义的 ID,不然也某些情况下是无法确定这是哪一个页面,针对于文章或者页面的 ID 获取基本可以使用 get_the_ID()这个函数来直接获取,但是在循环外该函数是无法获取到值的。

WordPress 页面 ID 获取

那么下面子凡就根据在 Fanly MIP 主题开发中遇到的情况下,收集整理了几个方法:

方法一:

1
2
3
//文章或页面的 ID 值,如果未在循环中输出值可能不准确
$postid = get_the_ID();  
echo $postid;

方法二:

1
2
3
//检索当前查询对象的 ID
$current_id = get_queried_object_id();  
echo $current_id;

方法三:

1
2
3
4
// 检索当前查询的对象,从对象中获取 ID
$object = get_queried_object();
$id = $object -> ID;
echo $id;

方法四:

1
2
3
4
// 通过$post 全局变量获取文章或页面 ID
global $post;
$id = $post -> ID;
echo $id;

补充内容:

1
2
3
4
5
6
7
8
9
10
// 第一种获取父级页面的 ID
global $post;
$id = $post -> ID;
$parent = get_post_ancestors($post -> ID);
print_r($parent);//打印出 Array ( [0] => 101 ) // 第二种获取父级页面的 ID
global $post;
$parent_id = $post -> post_parent;
echo $parent_id;//打印出父级页面的 ID

其实究竟要怎么去获取还是需要根据实际的开发情况而确定,文章或页面或者循环中可以使用 get_the_ID 函数直接获取,如果需要某些特殊或者 get_the_ID 获取不正确的时候,子凡觉得使用 get_queried_object_id 函数也就足够了,至于其它的方法大家自己研究吧!

除非注明,否则均为泪雪博客原创文章,禁止任何形式转载

本文链接:https://zhangzifan.com/wordpress-get-id.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/399488.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

王者荣耀交流协会第四次Scrum立会

拍照的是王磊同学,没有出镜。 开会时间:2017年10月30日下午18:45-19:16 共计31分钟 开会地点:一食堂二楼靠近窗户倒数第四排 今日完成工作进度: 袁玥同学完成了点击按钮刷新时间的功能代码; 王…

Python在信号与系统(1)——Hilbert兑换,Hilbert在国家统计局的包络检测应用,FIR_LPF滤波器设计,格鲁吉亚也迫使高FM(PM)调制...

谢谢董老师,董老师是个好老师。 心情久久不能平静,主要是高频这门课的分析方法实在是让我难以理解,公式也背只是,还是放放吧。 近期厌恶了Matlab臃肿的体积和频繁的读写对我的Mac的损害,所以学习了一下Python这一轻量级…

如何在WP-Config中设置WordPress错误日志

https://baijiahao.baidu.com/s?id1622279671500148245&wfrspider&forpc 你想在wp-config文件中设置WordPress错误日志吗?WordPress中的wp-config文件不仅控制您的WordPress网站设置,它也是一个非常有用的调试工具,可帮助您查找和修…

[再寄小读者之数学篇](2014-04-22 平方差公式在矩阵中的表达)

设 $A,B$ 都是 $n$ 阶复方阵, 且 $A^2B^22AB$. 证明: (1) $AB-BA$ 不可逆; (2) 如果 $\rank(A-B)1$, 那么 $ABBA$. 转载于:https://www.cnblogs.com/zhangzujin/p/3712973.html

C#:ref和out的联系及区别。

总结以上四条得到ref和out使用时的区别是:①:ref指定的参数在函数调用时候必须初始化,不能为空的引用。而out指定的参数在函数调用时候可以不初始化;②:out指定的参数在进入函数时会清空自己,必须在函数内部…

wordpress启用侧边栏小工具

http://www.seo628.com/1872.html wordpress后台默认不显示小工具选项,开发者需要启用小工具功能并把小工具在相应的前台位置调用出来,这样才能在后台直接拖动生成侧边栏。 激活小工具 激活小工具需要在functions.php中注册至少一个侧边栏 register_s…

comparator接口与Comparable接口的区别

Comparable & Comparator 都是用来实现集合中元素的比较、排序的,只是 Comparable 是在集合内部定义的方法实现的排序,Comparator 是在集合外部实现的排序,所以,如想实现排序,就需要在集合外定义 Comparator 接口的…

详解 Spotlight on MySQL监控MySQL服务器

前一章详解了Spotlight on Unix 监控Linux服务器 ,今天再来看看Spotlight on MySQL怎么监控MySQL服务器。 注:http://www.cnblogs.com/Javame/p/3685512.html 第一步: 下载并安装mysql-connector-3.5x Spotlight on MySQL 连接mysql必须使用mysql-connec…

lua------------------Unity3D研究院编辑器之打开unity不可识别的文件(十三)

Unity3D研究院编辑器之打开unity不可识别的文件(十三) 雨松MOMO 【Unity3D拓展编辑器】 围观8597次 9 条评论 编辑日期:2017-03-02 字体:大 中 小 有些特殊后缀名的文件在unity里是不可识别的。如下图所示,这里我把文本…

一起Polyfill系列:Function.prototype.bind的四个阶段

昨天边参考es5-shim边自己实现Function.prototype.bind,发现有不少以前忽视了的地方,这里就作为一个小总结吧。 一、Function.prototype.bind的作用 其实它就是用来静态绑定函数执行上下文的this属性,并且不随函数的调用方式而变化。 示例&am…

Window 通过cmd查看端口占用、相应进程、杀死进程等的命令【转】

一、 查看所有进程占用的端口 在开始-运行-cmd,输入:netstat –ano可以查看所有进程 二、查看占用指定端口的程序 当你在用tomcat发布程序时,经常会遇到端口被占用的情况,我们想知道是哪个程序或进程占用了端口,可以用该命令 ne…

盘点18个免费的WordPress主题后台选项开发框架

https://yusi123.com/3205.html/3 13.Warp Framework Warp框架不仅支持WordPress和Joomla,还可以可扩展到其他的适用Web程序。使用Warp框架你可以轻松的定制你需要的功能。 该框架是来自Yootheme团队。看看他们出的主题,你就知道这个绝对是精品了。精心设计的界面和…

lua----------------使用VS2015搭建lua开发环境的一些侥幸成功经验,

所以本篇博文介绍在Windows平台下,使用VS2015搭建lua开发环境的一些侥幸成功经验,安装过程参考网上教程,安装过程如下(参考http://www.byjth.com/lua/33.html) 一 生成lua5.3.lib 1、下载并编译lua源码 首先进入lua官…

中国剩余定理求解“六位教授必须首次都停止上课”问题

问题: 六位教授在周一至周六开始上课,这六位教授分别每2,3,4,1,6,5天授课一次, 该学校禁止周天上课,因此周天必须停课,问什么时候所有六位教授首次发现他们必须同时停课?(中国剩余定理知识求解) 求解&#…

wordpress 主题开发

https://www.cnblogs.com/welhzh/p/6937243.html wordpress 主题开发 https://yusi123.com/3205.html https://themeshaper.com/2012/10/22/the-themeshaper-wordpress-theme-tutorial-2nd-edition/ https://codex.wordpress.org/Theme_Frameworks https://lorelle.wordpre…

CentOS6.4下安装TeamViewer8

今天测试selenium调用firefoxdriver,该驱动无法在无界面环境中运行,需要远程连接到服务器进行操作,于是有了下面安装TeamViewer的过程。 先前尝试很多次也没有运行起来TeamViewer8,主要问题是安装后启动时候,没有出现授…

关于std::ios::sync_with_stdio(false)

std::ios::sync_with_stdio(false); 很多C的初学者可能会被这个问题困扰,经常出现程序无故超时,最终发现问题处在cin和cout上,(甚至有些老oier也会被这个问题困扰,每次只能打scanf和printf,然后一堆的占位符…

debian下安装repo

1、去google网站上下载repo脚本(用php语言写成的脚本) https://gerrit.googlesource.com/git-repo//stable/repo 可以将脚本复制下来并保存即可 2、将其拷贝到/bin 目录下 并加权限 sudo chmod 777 repo 3、修改配置文件 /root/.bashrc 在最后一行添加如…

明细表达到15亿了

MSSQLserver2005 建好索引,速度还是可以的。转载于:https://www.cnblogs.com/jjoo/p/3718372.html

WordPress 添加网页图标

wp_site_icon(); 参考:https://www.wpdaxue.com/wordpress-4-3-site-icon.html