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

方法一

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

方法二

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

方法三

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

方法四

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

补充内容

// 第一种获取父级页面的 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

这些就是常用的获取ID的方法,具体使用哪一个就根据你的开发环境来设置吧。