问题描述
我相当新的 wordpress,我想知道如果我可以得到一个 page id
与它的 slug
。有可能请让我知道。
最佳解决方案
使用 get_page_by_path($page_path)
:
$page = get_page_by_path( 'about' );
echo get_the_title( $page );
这将返回一个常规的后期对象。
次佳解决方案
已经在这个论坛上提问和回答了。我从那里粘贴相同的代码。使用此功能来检索页面 ID 。
function get_page_by_slug($page_slug, $output = OBJECT, $post_type = 'page' ) {
global $wpdb;
$page = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM $wpdb->posts WHERE post_name = %s AND post_type= %s AND post_status = 'publish'", $page_slug, $post_type ) );
if ( $page )
return get_post($page, $output);
return null;
}
第三种解决方案
我一直在用这个..
function get_id_by_slug($page_slug) {
$page = get_page_by_path($page_slug);
if ($page) {
return $page->ID;
} else {
return null;
}
}
希望这将有助于某人。
参考文献
注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。