WordPress插件内连接表

时间:2014-06-24 11:41:16

标签: php mysql sql wordpress join

我为我的网站制作了这个插件,我可以为用户生成一些优惠券。我写了一个插件,我在自定义管理页面上列出了所有优惠券。

我的自定义表格如下:

名称:wp_rdc 字段:id,user_id,优惠券

我列出了我想要加入wp_users表的所有优惠券,并从wp_users表中获取相应的user_login(用户名)到wp_rdc表中的user_id。

我试图写这样的查询,但我不知道如何回应不同的变量,我是新加入表格。

$coupons = $wpdb->get_results('SELECT * FROM wp_rdc AS r INNER JOIN wp_users AS u ON u.id = r.user_id ORDER BY user_id DESC');

我到底有多远,现在我不知道接下来该做什么。所以基本上我的问题是如何从wp_users表中回显出user_login?

这是我从wp_rdc表中回显我的数据的方式,其中我而不是user_id想要回显user_login,因为这看起来好于回显出对最终用户没有意义的ID

$table_row = "";

foreach( $coupons as $coupon ) {
   $table_row .= "<tr>";
   $table_row .= "<td class='rdc-table-data'>" . $coupon->id  . "</td>";
   $table_row .= "<td class='rdc-table-data'>" . $coupon->user_id  . "</td>";
   $table_row .= "<td class='rdc-table-data'>" . $coupon->coupon  . "</td>";
   $table_row .= "</tr>";
}

echo $table_row;

1 个答案:

答案 0 :(得分:1)

您可以使用wp_users表中的user_nicename或user_login:

$coupons = $wpdb->get_results('SELECT r.id, r.user_id, r.coupon, u.user_login, u.user_nicename FROM wp_rdc AS r INNER JOIN wp_users AS u ON u.id = r.user_id ORDER BY user_id DESC');

$table_row = "";

foreach( $coupons as $coupon ) {
   $table_row .= "<tr>";
   $table_row .= "<td class='rdc-table-data'>" . $coupon->id  . "</td>";
   $table_row .= "<td class='rdc-table-data'>" . $coupon->user_nicename  . "</td>";
   $table_row .= "<td class='rdc-table-data'>" . $coupon->coupon  . "</td>";
   $table_row .= "</tr>";
}

echo $table_row;