WordPress用PHPデバッグツール「console_log」について

https://github.com/yuya-tajima/console_log

有志によって作られたこちらのプラグインですが、

まず導入編
一番手っ取り早い方法は、プラグインのディレクトリーに入って、そこでリポジトリをクローンするってやつ



[user@localhost plugins]$ cd /var/www/htdocs/wp-content/plugins
[user@localhost plugins]$ git clone https://github.com/yuya-tajima/console_log.git
[user@localhost plugins]$ wp plugin list | grep console_log
console_log     inactive        none    0.8.6 

これでインストールは完了、次は、wp-config.phpのディレクトリに移動して、ファイルを編集し、次のように定義を追加する。
挿入位置こそ適当だが、覚えやすい為に今回はDEBUGオプションの下に追記


 70 /**
 71  * 開発者へ: WordPress デバッグモード
 72  *
 73  * この値を true にすると、開発中に注意 (notice) を表示します。
 74  * テーマおよびプラグインの開発者には、その開発環境においてこの WP_DEBUG を使用することを強く推奨します。
 75  */
 76 //define('WP_DEBUG', false);
 77 //define('WP_DEBUG_DISPLAY', false);
 78 //define('WP_DEBUG_LOG', true);
 79 define('CONSOLE_LOG_FILE', '/var/log/console.log');//ログ

ログの場所に注意してほしいのは、ウェブサーバーに書き込みの手が届くところに置くこと、パーミッション設定はウェブサーバーユーザーに書き込みを付与すること。
用意が出来たら、プラグインを有効化する。wp cli導入済みの場合は



[user@localhost plugins]$ wp plugin activate console_log

これで初期設定、有効化は完了。

次は使ってみよう。
console_logは、PHPソースコードのDEBUGで大変役立つツールなので、使い方はvar_dumpに似ているが、var_dumpと違ってechoしなくとも戻り値が確認できるのはポイント。
例えば、ループ構造のif(have_posts())が何も起こらなかったけど戻り値は何だったかを知りたい時、処理がそこに辿り着く前に


<?php
    console_log(have_posts());
    if(have_posts()):the_post();
?>

で記述して、一回処理を走らせて、ログを確認すると、


[user@localhost plugins]$ tailf /var/log/console.log

...(前略)
file_name : /var/www/htdocs/wp-content/themes/my_theme/page.php
file_line : 7
func_name : console_log
func_args : (bool)true

bool(true)

*********************************************

なんと!型と戻り値までわかるなんて、バケモノか!?

というわけで、諸君の楽しいconsole_logライフを祈る!

信雅

Master of TERNS. Focus on WordPress/PHP/Cloud Computing/Space Science Pronunciation of my name: Xin4Ya3(Chinese), Hsin4Ya3(Another Chinese), しんや(Japanese), Shinya(English).

シェアする

コメントを残す

コメントする

CAPTCHAis initialing...