问题描述
我需要根据页面 URL 是否存在来显示某些内容。我不想通过标题检查,因为某些页面将具有相同的标题,只有不同的父页面。
例如一页可能是
http://example.com/analysis/firstNamelastName
http://example.com/exercise/firstNamelastName
我只需要知道这些 URL 中有一个是否存在。
最佳解决方案
你可以列出一些路径来检查…
$page_paths = array(
'analysis/firstNamelastName',
'exercise/firstNamelastName'
);
然后检查每个页面路径是否有页面对象。
foreach( $page_paths as $page_path ) {
echo '<code>' . $page_path . '</code> ' . PHP_EOL;
if( ! $page = get_page_by_path( $page_path ) ){
echo 'Does not exist.' . PHP_EOL;
} else{
echo 'Exists and resolves to: <code>' . get_permalink( $page->ID ) . '</code>' . PHP_EOL;
}
}
实际上可以使用 get_page_by_path();
作为 page
以外的后期类型。参见第三个参数。
参考文献
注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。