我有一个URL(例如URL/sample-page/
), 我需要相应的对象ID。如何?
Get the object ID by URL
4 个回复
SO网友:shabushabu
SO网友:krembo99
其他答案是有效的,但只是为了添加另一个(通常未知,但非常有用)方法,该方法由一个名为:get_page_by_path();
$page =get_page_by_path(\'parent-page/sub-page\');
值得注意的是,path参数甚至可以将SLUG作为参数。示例:$page = get_page_by_path(\'your-slug-of-page-to-exclude\');
wp_list_pages(\'exclude=\'.$page->ID.\'&title_li=\');
那么你可以使用$page->ID
SO网友:fuxia
使用get_queried_object_id()
的映射器WP_Query::get_queried_object_id()
.
不像url_to_postid()
你不必知道URL,它也适用于分类法和自定义帖子类型(如果我没记错的话)。
有关用法示例,请参见myanswer to Get current term\'s ID.
SO网友:elbatron
我也有同样的问题,只有自定义帖子类型。不幸地url_to_postid( $url );
无法使用自定义类型,因此我最终使用了此函数bwp_url_to_postid($url).此函数扩展url_to_postid( $url );
使用自定义帖子类型。
如果您拥有URL的永久链接,则:
<?php $postLink = get_permalink($post_object->ID); ?>
<?php $postId = bwp_url_to_postid($link); ?>
<?php echo $postId ?>
结束