自定义小部件内的WordPress MySQL查询

时间:2014-04-16 16:27:46

标签: php mysql wordpress wordpress-plugin

我遵循here关于在WordPress中创建Widget的指导,他们说要创建一个我已经完成的插件小部件,它会按预期显示Hello World

但是现在我想在这个小部件中运行一个mysqli查询。我找不到任何地方提供有关此信息,因为我知道我想要运行的查询是

SELECT * FROM wp_posts WHERE post_type = 'facts'

2 个答案:

答案 0 :(得分:1)

您可以通过在widget函数中定义global来使用$wpdb,它有一个mysql连接的实例

class YourWidget extends WP_Widget
{
   function widget($args, $instance)
    {
    global   $wpdb;
      $Results = $wpdb->get_results("SELECT * FROM wp_posts
       WHERE post_type = 'facts' AND post_status='publish'");
      var_dump($Results); /* to see what you got from query */
    }

}

Reference wpdb

答案 1 :(得分:0)

使用适当的方法:

$results = get_posts( array(
    'posts_per_page' => -1,
    'post_type' => 'facts',
    'post_status' => 'publish'
    ))

foreach ($results as $row) {
    echo $row->post_title;  
}

请参阅https://codex.wordpress.org/Template_Tags/get_posts