扩展wpdb
我们可以创建db.php
文件位于wp-content/
要覆盖的目录wpdb
根据我们的需要上课。
我在这个网站上查看了这样的例子,并找到了一个@markkaplen的例子here.
下面是一个示例,您可以在每次查询运行后访问上一个结果:
<?php
/**
* db.php - Override the global $wpdb object to collect all query results
*/
namespace WPSE\\Question242685;
class DB extends \\wpdb
{
public function __construct( $dbuser, $dbpassword, $dbname, $dbhost )
{
// Parent constructor
parent::__construct( $dbuser, $dbpassword, $dbname, $dbhost );
}
public function query( $query )
{
// Parent query
$val = parent::query( $query );
//----------------------------------------------------------------------
// Edit this to your needs
//
// Warning: It can be slow and resource demanding to collect all results
if ( defined( \'SAVEQUERIES\' ) && SAVEQUERIES )
{
// do something with $this->last_result;
}
//----------------------------------------------------------------------
return $val;
}
} // end class
// Override the global wpdb object
$GLOBALS[\'wpdb\'] = new DB( DB_USER, DB_PASSWORD, DB_NAME, DB_HOST );
这里我们假设
SAVEQUERIES
定义为
true
在
wp-config.php
文件
Note 收集所有结果可能需要大量的资源,因此您最好只在dev安装上进行测试。