为了账号安全,请及时绑定邮箱和手机立即绑定

管理员中的 WordPress $_GET['post'] 返回 NULL

管理员中的 WordPress $_GET['post'] 返回 NULL

PHP
慕妹3146593 2023-12-15 15:24:42
我想要修改 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 注意:未定义索引: 帖子 变量不存在


查看完整回答
反对 回复 2023-12-15
  • 1 回答
  • 0 关注
  • 47 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信