我想要修改 WordPress 編輯帖子頁面中的自定義字段,并且需要帖子 ID 才能執行此操作。我在functions.php 中有一個函數,當我手動輸入帖子ID 時它工作正常。當我嘗試從 URL 獲取帖子 ID 但 $_GET['post'] 被證明是無用時,問題就出現了。 var_dump($_GET['post']) returns NULL、$global $post; var_dump($post->ID) returns NULL。該URL是正常的帖子編輯鏈接網址:http://mywebsite.com/wp-admin/post.php?post=435&action=edit我已經能夠通過 admin_head 掛鉤獲取帖子 ID,但無法讓它在我的其他函數中使用 set_query_var() 工作。下面看看我修改后的代碼:add_action( 'admin_head', 'get_post_ID' );function get_post_ID() {global $post;$thePostID = 0;$pagenow = isset($GLOBALS['pagenow']) ? $GLOBALS['pagenow'] : null;if ( $pagenow == 'post.php' ) { $thePostID = $post->ID; set_query_var('my_post_id', $thePostID);}return $post->ID;}function get_admin_post_ID() { var_dump(get_query_var('my_post_id'));}add_action( 'template_redirect', 'get_admin_post_ID' );這里可能有什么問題?我有什么遺漏的嗎?請協助。
1 回答

慕斯王
TA貢獻1864條經驗 獲得超2個贊
那么,$_GET 返回什么? 您是否使用某些編輯帖子的插件,但不使用/傳遞此變量? 前面說了,瀏覽器地址url,返回這樣的東西還是不? https://subdomain.w3host.com/wordpress/wp-admin/post.php?post=100&action=edit
PS: var_dump 在 $_GET['post'] 上返回 NULL,只是意味著有這樣,一個PHP 注意:未定義索引: 帖子 變量不存在
- 1 回答
- 0 關注
- 172 瀏覽
添加回答
舉報
0/150
提交
取消