@ WordPress

Query Monitor

デバッグやパフォーマンスチェックをする際に便利なプラグインです。

有効化するとアドミンバーにページ生成時間、メモリ使用量、DBクエリの実行時間、実行したクエリ数が表示され、この表示にマウスポインターを合わせると、デバッグ用の各種情報へのリンクがプルダウンメニューで表示されます。

インストール

ダッシュボード -> プラグイン -> 新規追加 -> プラグインの検索より「Query Monitor」で検索し、今すぐインストール -> 有効化 します。

または、https://ja.wordpress.org/plugins/query-monitor/ よりプラグインをダウンロードし、FTP クライアントでアップロード、ダッシュボード -> プラグイン -> インストール済のプラグイン -> 有効化 します。

wp-config.phpの設定

install_directory\wp-config.php を次のように設定します。

define( 'WP_DEBUG', true );
define( 'SAVEQUERIES', true );

SAVEQUERIES 定義はデータベースクエリを配列に保存して表示し、クエリの解析を支援します。「true」を設定して有効化すると、各クエリが実行時間、呼び出し元の関数と共に保存されます。

SAVEQUERIES 定義は、データベースクエリを配列に保存し、その配列を表示してそれらのクエリの分析に役立ちます。

デバッグ出力を得るには、テーマのフッターファイル(例:install_directory\wp-content\themes\twentyseventeen\footer.php)
に次のコードを追加します。

<?php
if (current_user_can('administrator')){
    global $wpdb;
    echo "<pre>";
    print_r($wpdb->queries);
    echo "</pre>";
}
?>

WordPress Codex は次のように、注意文が掲載されています。
注意: この設定はサイトのパフォーマンスに影響を与えます。デバッグ時以外は無効化してください。

db.phpのシンボリックリンクを作成する

install_directory\wp-content\plugins\query-monitor\wp-content\db.php のシンボリックリンクを install_directory\wp-content\db.php に作成します。

ローカルの xampp で作業をしている場合は、コマンドライン(管理者として実行)から mklink コマンドを使い、以下のようにシンボリックリンクを作成します。

mklink C:\xampp\htdocs\install_directory\wp-content\db.php C:\xampp\htdocs\install_directory\wp-content\plugins\query-monitor\wp-content\db.php

Query Monitor から得られる情報

項目 説明
Page generation time ページ生成時間
Peak memory usage メモリ使用量
Database query time DBクエリの実行時間
Database queries DBクエリの実行数
Queries 実行したクエリの詳細
Queries by Caller 実行関数別の回数
Queries by Component コンポーネント別の回数
Conditionals 表示されたページの条件分岐タグの情報
Request ページを表示する際のリクエストの詳細
Rewrite Rules 書き換え規則
Template 使われたテンプレートファイル
Scripts 読み込まれたスクリプトファイル
Styles 読み込まれたCSSファイル
Hooks 実行されたフックポイント
Languages 言語情報
HTTP Requests HTTPリクエスト履歴
Transients Set キャッシュ履歴
Environment 環境情報
Authentication 認証情報