あまりこういうことは書かないのだけれども、あんまりだったので記事にしておく。
FacebookやTwitterのシェア数、フォロー数などをバックグラウンドで取得するWordPressプラグイン
“SNS Count Cache”。
なんか大量にエラーログを吐くので調べてみたら、
WP_DEBUGが立っているとinfoレベルのログをerror_log()で吐く仕様…。
開発環境でエラーログ確認しないのだろうか…。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
class SCC_Logger { /** * Class constarctor * Hook onto all of the actions and filters needed by the plugin. */ protected function __construct() { self::log( '[' . __METHOD__ . '] (line=' . __LINE__ . ')' ); } /** * Output log message according to WP_DEBUG setting * * @param string $message Message. * @return void */ public static function log( $message ) { if ( WP_DEBUG === true ) { if ( is_array( $message ) || is_object( $message ) ) { error_log( print_r( $message, true ) ); } else { error_log( $message ); } } } } |
log()というメソッド名でerror_log()を呼ぶというのは想像の斜め上で、
デバッグ初手のアイデアとして浮かばなかった。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
/** * Class constarctor * Hook onto all of the actions and filters needed by the plugin. */ private function __construct() { SCC_Logger::log( '[' . __METHOD__ . '] (line=' . __LINE__ . ')' ); load_plugin_textdomain( self::DOMAIN, false, basename( dirname( __FILE__ ) ) . '/languages' ); add_action( 'init', array( $this, 'initialize' ) ); register_activation_hook( __FILE__, array( $this, 'activate_plugin' ) ); register_deactivation_hook( __FILE__, array( $this, 'deactivate_plugin' ) ); add_action( 'admin_menu', array( $this, 'register_admin_menu' ) ); add_action( 'admin_print_styles', array( $this, 'register_admin_styles' ) ); add_action( 'admin_enqueue_scripts', array( $this, 'register_admin_scripts' ) ); // add_action( 'admin_notices', array( $this, 'notice_page' ) ); add_action( 'wp_ajax_' . $this->ajax_action, array( $this, 'get_cache_info' ) ); add_action( 'wp_dashboard_setup', array( $this, 'add_wp_dashboard_widget' ) ); add_action( 'deleted_post' , array( $this, 'clear_cache_deleted_post' ) ); add_filter( 'plugin_action_links_' . plugin_basename( __FILE__ ), array( $this, 'add_plugin_action_links' ), 10, 4 ); } |