我正在寻找在init钩子触发时获取当前页面ID的信息。
一些最接近的我抓住了$ _POST ['post_id']当init命中admin-ajax.php但它不可靠......它通常没有设置第一页加载并需要刷新一些原因。有什么想法吗?
答案 0 :(得分:1)
您可以使用' after_setup_theme'钩子,它在“初始化”之前执行。然后,在该钩子触发的函数中,您可以获得当前页面ID,如下所示:
// Get access to the current WordPress object instance
global $wp;
// Get the base URL
$current_url = home_url(add_query_arg(array(),$wp->request));
// Add WP's redirect URL string
$current_url = $current_url . $_SERVER['REDIRECT_URL'];
// Retrieve the current post's ID based on its URL
$id = url_to_postid($current_url);