在Wordpress的init hook上或之前获取当前post_id

在Wordpress的init hook上或之前获取当前post_id,wordpress,Wordpress,我一直在寻找在init钩子启动时获取当前页面id的方法 最近的一次是在init点击admin-ajax.php时抓取$\u POST['POST\u id'],但它不可靠。。。它通常不会设置第一页加载,并且出于某种原因需要刷新 有什么想法吗?你可以使用'after\u setup\u theme'钩子,它在'init'之前执行。然后,在该钩子触发的函数中,您可以获得如下所示的当前页面ID: // Get access to the current WordPress object instanc

我一直在寻找在init钩子启动时获取当前页面id的方法

最近的一次是在init点击admin-ajax.php时抓取$\u POST['POST\u id'],但它不可靠。。。它通常不会设置第一页加载,并且出于某种原因需要刷新


有什么想法吗?

你可以使用'after\u setup\u theme'钩子,它在'init'之前执行。然后,在该钩子触发的函数中,您可以获得如下所示的当前页面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);

我得到了未定义的索引:重定向,这很奇怪。你能提供一个显示钩子和函数的粘贴箱吗?我最后只使用了QUERY_STRING和parse_url