Get closest page ID from URL 时间:2012-06-29 作者:Scott 让我们在我的WordPress网站上导航到:www.example。com/media centre/news/17/示例新闻帖子在这种情况下,我正在看一篇CPT中的帖子,名为News.我想做的是获取最接近该URL的页面ID。我知道最接近的页面ID可以在以下位置找到:www.example。com/媒体中心/新闻/那么,我如何在URL上循环找到最近的页面,然后如何获得该页面的ID呢? 2 个回复 最合适的回答,由SO网友:Scott 整理而成 在StephenHarris的帮助下,我自己在SO得到了PHP的帮助。$page = get_closest_page(); // echo $page->ID; function get_closest_page( $url = false ) { global $wp; if( ! $url ) $url = $wp->request; $page = get_page_by_path( $url ); if( $page ) return $page; $url = dirname( $url ); return get_closest_page( $url ); } SO网友:Stephen Harris 您应该能够从以下位置获取当前url$url = add_query_arg().然后假设结构:www.example.com/page/subpage/news/ID/post 您可以使用preg_match 提取/page/subpage/news. 那么使用起来就很简单了get_page_by_path();.如果失败,您可以检查/page/subpage/ 最后/page. 结束 文章导航