我正在使用wordpress,这对我来说是新的,现在我已经获得了完全用WPS设计的网站,但问题是我无法搜索我找到的每个功能/页面的查询
$wpdb->get_results
用于从数据库中获取结果。这也不起作用$wpdb->queries
是否有任何方法可以打印当前执行的每个查询?。请帮忙。
我正在使用wordpress,这对我来说是新的,现在我已经获得了完全用WPS设计的网站,但问题是我无法搜索我找到的每个功能/页面的查询
$wpdb->get_results
用于从数据库中获取结果。这也不起作用$wpdb->queries
是否有任何方法可以打印当前执行的每个查询?。请帮忙。
调试栏是WordPress推荐的用于主题和插件开发的插件之一。我还使用调试栏扩展器:http://wordpress.org/extend/plugins/debug-bar-extender/
对于$wpdb->queries
要工作,您需要在中配置wp-config.php
:
define(\'SAVEQUERIES\', true);
强烈建议不要将其用于生产(严重影响性能),因此默认情况下会将其关闭。我经常在需要检查当前查询时这样做:
add_action( \'wp_head\', \'show_current_query\' );
function show_current_query() {
global $wp_query;
if ( !isset( $_GET[\'q\'] ) )
return;
echo \'<textarea cols="50" rows="10">\';
print_r( $wp_query );
echo \'</textarea>\';
}
要显示当前查询,只需添加?q
输入当前URL。这将显示当前查询(存储在全局变量$wp\\u query中),包括SQL查询和所有其他查询变量。
I prefer Debug Bar.
全球$wp_query
包含有关当前查询的所有内容,包括参数、结果、结果内容和查询本身。
$wp_query->request
应该在这里为你做这项工作。
您也可以使用WPDB Profiling plugin 这将在页面底部显示为生成当前所在页面而运行的所有SQL语句。
您可以使用Wp Pear Debug 插件。它将显示页面中执行的查询列表、执行这些查询所需的秒数以及启动查询的php函数。请注意,在开始工作之前,必须至少保存一次设置。
<?php $wpdb->show_errors(); ?> // use syntax just before your query
<?php $wpdb->print_error(); ?> // user after your query execution
Ie.
<?php $wpdb->show_errors();
$id=$wpdb->update(\'table_name\',$array,$condition);
$wpdb->print_error();
?>
我是否需要在wpdb->插入之前使用wpdb prepare?如果我正在使用wpdb->insert将值插入wordpress表中,那么在插入数据之前我需要“清理”数据吗,还是这个方法(wpdb->insert)可以为我这样做?