php - wp_get_current_user null 如果我直接在某些 PHP 文件中访问它

标签 php wordpress

我正在为 Wordpress 创建一个插件。我创建了一个简单的 PHP 文件:

测试.php。我可以通过浏览器访问它,但是当我这样做时:

<?php

global $wpdb;
global $wp;

?>

我的 wpdb 和 wp 是 NULL。谁能告诉我可能是什么问题?简而言之,所有 wp 函数都是空的。 wordpress 库什么时候真正设置它们?通常,您的插件将在 Wordpress 的上下文中运行,并且您在左侧有相同的 Wordpress 菜单等。但是我的 PHP 中需要 1 个文件,它不在 Wordpress 的上下文中运行,但我需要访问 wordpress 函数。这是一个简单的 PHP 文件,应该只返回 XML 而没有其他 HTMl 等。

最佳答案

问题是这些变量没有设置。所以它们是 NULL。

如果您先设置它们,它们将不会为 NULL。

在使用这些全局变量之前尝试包含 wp-load.php 文件,看看它是否符合您的需要。

另见:

代码:

//This path assumes your php file is in the template dir, you may need to update the path to these files.

include_once('../../../wp-load.php');

来源:https://stackoverflow.com/a/4035357/835950

关于php - wp_get_current_user null 如果我直接在某些 PHP 文件中访问它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7901468/

相关文章:

php - Laravel 无法显示图像

php - 如何使用php从数组中获取数组中的键和值

php - Rest API 如何通过基本身份验证进行身份验证?

css - 将缩小的 CSS 排入 Wordpress

php - 自定义帖子类型搜索应该适用于前端而不是管理员

javascript - PHP、jQuery 和 JSON、日期搜索

javascript - WooCommerce:根据所选的运输方式显示或隐藏结账字段和部分

php - 使用 $wpdb 作为 WordPress meta_query 的替代品

php - 在 PHP 中检测浏览器语言并相应地设置 $locale

php - 数组更新语句清空 SQL 表中的记录。 - 更新