From 2cb708f70d7da6584871b515f16478f377b1f41c Mon Sep 17 00:00:00 2001 From: Andrey Savchenko Date: Fri, 14 Dec 2018 17:08:26 +0200 Subject: [PATCH] Added core events and tracking of distinct sidebars. --- CHANGELOG.md | 1 + src/Event/Core_Events.php | 8 ++++++-- src/Record/Hook_Record_Collector.php | 11 +++++++++++ 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c3efb30..7e7ae49 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ### Added - call backtraces to SQL records - new format of hook events += sidebar tracking ### Changed - required PHP version to 7.1 diff --git a/src/Event/Core_Events.php b/src/Event/Core_Events.php index c4ba1b4..5895ff2 100644 --- a/src/Event/Core_Events.php +++ b/src/Event/Core_Events.php @@ -18,12 +18,16 @@ class Core_Events implements Hook_Event_Config_Interface { [ 'Plugins Loaded Hook', 'plugin', 'plugins_loaded' ], [ 'Themes Load', 'theme', 'setup_theme', 'after_setup_theme' ], [ 'Core Init', 'core', 'init', 'wp_loaded' ], + [ 'Query Setup', 'core', 'wp_loaded', 'template_redirect', PHP_INT_MAX, -1 ], + [ 'Template Loader', 'theme', 'template_redirect', 'template_include' ], [ 'Admin Init', 'core', 'admin_init' ], [ 'Admin Menu', 'core', '_admin_menu', 'admin_menu' ], - [ 'Toolbar', 'core', 'admin_bar_menu', '' ], + [ 'Admin Print Scripts', 'core', 'admin_enqueue_scripts', 'admin_print_scripts' ], [ 'Head Hook', 'theme', 'wp_head' ], [ 'Main Loop', 'theme', 'loop_start', 'loop_end' ], - [ 'Admin Print Scripts', 'core', 'admin_enqueue_scripts', 'admin_print_scripts' ], + [ 'Sidebar', 'theme', 'dynamic_sidebar_before', 'dynamic_sidebar_after' ], + [ 'Toolbar', 'core', 'admin_bar_menu', '' ], + [ 'Footer Hook', 'theme', 'wp_footer', '' ], ]; } } diff --git a/src/Record/Hook_Record_Collector.php b/src/Record/Hook_Record_Collector.php index aadd98d..8e10a63 100644 --- a/src/Record/Hook_Record_Collector.php +++ b/src/Record/Hook_Record_Collector.php @@ -87,6 +87,11 @@ class Hook_Record_Collector extends Stopwatch_Record_Collector { if ( '' !== $start ) { add_action( $start, function ( $input = null ) use ( $collector, $event, $category ) { + + if ( 'Sidebar' === $event ) { + $event = $input; + } + $collector->start( $event, $category ); return $input; @@ -95,6 +100,11 @@ class Hook_Record_Collector extends Stopwatch_Record_Collector { if ( '' !== $stop ) { add_action( $stop, function ( $input = null ) use ( $collector, $event ) { + + if ( 'Sidebar' === $event ) { + $event = $input; + } + $collector->stop( $event ); return $input; @@ -161,6 +171,7 @@ class Hook_Record_Collector extends Stopwatch_Record_Collector { public function get_records(): array { $this->stop( 'Toolbar' ); + $this->stop( 'Footer Hook' ); return parent::get_records(); }