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

Mar*_*ark 1 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;
?>
Run Code Online (Sandbox Code Playgroud)

执行这段代码后,我得到一个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_。

我究竟做错了什么?有人能帮我一下吗?

kas*_*alo 5

假设您的脚本放置在 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" );
Run Code Online (Sandbox Code Playgroud)

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

  var_dump()  or print_r() 
Run Code Online (Sandbox Code Playgroud)