How to query custom db table?

时间:2010-11-27 作者:Joann

我正在为会员网站创建我的第一个插件。我有一个名为subscription 使用subscr_user_id 值取自的列$current_user->ID. 因此,当当前用户订阅时,会在表中插入一条新记录,其中subscr_user_id 获取当前用户ID的值。如何从模板中查询(插入和选择)表(我不知道是否有其他方法可以测试查询)?

我有这个SELECT查询:请注意,我已经在subscr\\U user\\U id=1的表订阅中预插入了一条记录,这意味着该用户是管理员。我通过sql控制台做到了这一点。

//Somewhere in between the body of the template.
//This query will be used for a code that checks if a user ID is already subscribed to avoid duplicate records.
global $current_user;
global $wpdb;

$user_id = $wpdb->get_row("SELECT * FROM $wpdb->subscription WHERE subscr_user_id = $current_user->ID");

echo \'<p> Current user ID is:\'.$user_id->subscr_user_id. \'</p>\';
在查看使用该模板的页面之前,我以管理员身份登录,以确保ID为1. 很遗憾,我没有得到任何结果?还有谁能给我看一下INSERT语句的示例吗?

2 个回复
最合适的回答,由SO网友:Denis de Bernardy 整理而成

初始化插件时,您需要告诉$wpdb哪些订阅:

$wpdb->subscriptions = $wpdb->prefix . \'subscriptions\';

SO网友:Chris

“$wpdb->订阅”仅适用于使用相同的表前缀(通常为wp\\uu)的情况,否则只需使用“订阅”。您的插件是否正在检查前缀并相应地创建表?

否则我看不出这句话有什么错。

结束

相关推荐

Corrupt Wordpress Database

我认为这是最奇怪的文字印刷问题。一个拥有大量帖子数据库的客户网站已经有了自己的想法。前一分钟一切似乎都很好,接下来的帖子、类别和标签都不见了。此时仪表板告诉我9个类别中有2309个帖子,但当我单击admin中的categories链接时,列表中没有任何帖子。我可以在admin中看到所有帖子,但尽管它们过去被分配到类别并列出标签,但现在它们都“未分类”,没有标签。很明显,wordpress数据库在某种程度上已经损坏,但从哪里开始尝试修复呢!?以下是我迄今为止测试的内容:插件–我关闭了所有当前的插件。主题–我