我想要修改 WordPress 編輯帖子頁(yè)面中的自定義字段,并且需要帖子 ID 才能執(zhí)行此操作。我在functions.php 中有一個(gè)函數(shù),當(dāng)我手動(dòng)輸入帖子ID 時(shí)它工作正常。當(dāng)我嘗試從 URL 獲取帖子 ID 但 $_GET['post'] 被證明是無(wú)用時(shí),問(wèn)題就出現(xiàn)了。 var_dump($_GET['post']) returns NULL、$global $post; var_dump($post->ID) returns NULL。該URL是正常的帖子編輯鏈接網(wǎng)址:http://mywebsite.com/wp-admin/post.php?post=435&action=edit我已經(jīng)能夠通過(guò) admin_head 掛鉤獲取帖子 ID,但無(wú)法讓它在我的其他函數(shù)中使用 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' );這里可能有什么問(wèn)題?我有什么遺漏的嗎?請(qǐng)協(xié)助。
1 回答

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