如何从PHP访问Wordpress的全局$ wpdb?

时间:2018-08-09 16:41:15

标签: wordpress global

我正在尝试使用PHP对MySQL数据库执行查询。我的代码如下:

<?php
require_once ("wp-includes/wp-db.php");
global $wpdb;
$myrows = $wpdb->get_results( "SELECT id, name FROM wp_db_posts" );
echo $myrows;
?>

执行此代码后,我得到一个Fatal error: Call to a member function get_results() on null in C:\Apache24\htdocs\wordpress\me.php on line 4

我实际上是WordPress的新手,并且想确切地知道如何从PHP访问$ wpdb全局变量。我的数据库以wp_db_开头。

我在做什么错?有人可以帮我吗?

1 个答案:

答案 0 :(得分:2)

假设您将脚本放在WordPress的根目录中,则应加载wordpress而不直接访问wp-db.php,因此您的代码应如下所示:

  <?php
  require_once "wp-load.php";
  global $wpdb;
 $myrows = $wpdb->get_results( "SELECT ID, post_name FROM {$wpdb->prefix}posts" );

并且您无法回显我的行,因为您将获得对象而不是字符串,而应该使用

  var_dump()  or print_r()