我遵循了在WordPress中创建Widget的指导,他们说要创建一个插件小部件,我已经完成了,它确实按预期显示Hello World
。
但现在我想在这个小部件中运行一个mysqli查询。我找不到任何地方提供这方面的信息,因为我知道我想运行的查询是
SELECT * FROM wp_posts WHERE post_type = 'facts'
您可以通过在小部件函数中定义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 */
}
}
参考wpdb
使用适当的方法:
$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