【问题标题】:How do I run a mysql query in wordpress?如何在 wordpress 中运行 mysql 查询?
【发布时间】:2013-12-09 17:54:11
【问题描述】:

此查询有效并返回我想要在 MySQL 中的结果,但我如何让它在 wordpress 中工作?

SELECT * FROM `wp_usermeta` WHERE `meta_key` = 'points' AND `user_id` = '1'

我希望能够查看用户 1 获得的所有“积分”。我需要能够在 wordpress 的帖子和页面上显示这一点。

【问题讨论】:

    标签: mysql wordpress


    【解决方案1】:
    global $wpdb;    
    $result = $wpdb->get_results( "SELECT * FROM wp_usermeta WHERE meta_key = 'points' AND user_id = '1'");
    print_r($result);
    

    阅读this

    【讨论】:

    • 那篇文章谈到了制作插件。我不想制作一个插件,只是添加一些代码行,使结果出现在页面或帖子上。我使用插件 Allow PHP in Post and Pages 将 php 查询代码添加到其中。还有其他/更简单的方法吗?
    • 您可以尝试在查询代码前添加global $wpdb;。它需要帮助,但我没有尝试。我更新了代码。
    • 当我将上面的代码输入到“添加 php 插件”中时,页面上显示的内容: Array ( [0] => stdClass Object ( [umeta_id] => 38 [user_id] = > 1 [meta_key] => 点 [meta_value] => 1 ) [1] => stdClass 对象 ( [umeta_id] => 39 [user_id] => 1 [meta_key] => 点 [meta_value] => 100 ) [2 ] => stdClass 对象 ( [umeta_id] => 40 [user_id] => 1 [meta_key] => 点 [meta_value] => 66 ) [3] => stdClass 对象 ( [umeta_id] => 41 [user_id] => 1 [meta_key] => 点 [meta_value] => 32 ) 等等...
    • 我希望能够将所有值相加。我猜我使用 Select SUM * From... 当我这样做时,我只得到:我的页面上的数组()
    • 好的,我已经很接近了。我用过:全局 $wpdb; $result = $wpdb->get_results("SELECT SUM(meta_value) FROM wp_usermeta WHERE meta_key = 'points' AND user_id = '1'"); print_r($结果);并得到: Array ( [0] => stdClass Object ( [SUM(meta_value)] => 615 ) ) 我只想要数字 615。我怎样才能搭上那条线上的其他东西。
    【解决方案2】:

    使用以下代码.....

    $q="SELECT * FROM wp_usermeta WHERE meta_key = 'points' AND user_id = '1'";
    $result = $wpdb->get_results($q);
    

    它将返回数组作为结果。

    【讨论】:

    • 我什至可以在哪里输入这个?我有一个名为“Allow PHP in Post and Pages”的插件,我在那里尝试了代码。这是它给我的错误:致命错误:在/homepages/8/d195441424/htdocs/test/wp-content/plugins/allow-php-in-posts-中的非对象上调用成员函数get_results() and-pages/allowphp.php(373) : eval()'d 代码在第 2 行
    • 我不确定这是什么意思。
    猜你喜欢
    • 2020-06-20
    • 1970-01-01
    • 2014-10-03
    • 2014-02-01
    • 2013-11-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-06
    相关资源
    最近更新 更多