=== Ultimate DebugBar === Contributors: avram Donate link: https://paypal.me/avramator Tags: queries, database, sql, hooks, debug Requires at least: 5.0 Tested up to: 7.0.2 Requires PHP: 8.2 License: MIT License URI: https://opensource.org/licenses/MIT Stable tag: 1.0 Ultimate debug bar for your Wordpress website. == Description == Ultimate debug bar for your Wordpress website. On each page of your website a neat debug bar will be displayed with the following info: * PHP version * Request execution time * Request memory consumption * Wordpress-related PHP constants defined in your wp-config.php file * All website options (wp_options) * Request data * Timeline (waterfall) where you can see which portion of execution takes too much time * List of all hooks triggered on the page whose execution time exceeds 1ms, along with some stats * List of all database queries performed on the page, along with their source and execution time * Last 100 lines of your debug.log file (if it exists in wp-content) * List of loaded PHP files (categorized) Besides that, it will track request data/hooks/db queries/mem. consumption in AJAX calls too (beta). This plugin is meant to be used during development and/or debugging only. Only administrators and network administrators (in multi-site environment) can see the debugbar, unless the `WP_DEBUG` is set to `true`. In that case, everyone will see the debugbar. Try it instantly on [tastewp.com](https://tastewp.com/new?pre-installed-plugin-slug=ultimate-debugbar&redirect=%2F&ni=true)! == Installation == Use built in plugin installer or unzip ultimate-debugbar.zip in your wp-content/plugins and activate the plugin through the dashboard. == Frequently Asked Questions == = AJAX requests are not working when the plugin is active = Your server is blocking Ultimate DebugBar. If you're running nginx, [check this](https://stackoverflow.com/questions/23844761/upstream-sent-too-big-header-while-reading-response-header-from-upstream). = AJAX requests are not being displayed in the debugbar = The collected data for that request was too large to send back in HTTP headers (php-debugbar caps this at 250,000 bytes total) and was dropped. There's no workaround yet beyond reducing what you're collecting. = How do I disable tracking AJAX requests? = Add the following code to your `wp-config.php`: `define('ULTIMATE_DEBUG_AJAX', false);` == Screenshots == 1. List of all database queries with their timings 2. List of (slow) hooks lasting over 1ms in an AJAX request 3. Deserialized/formatted config options 4. Timeline (waterfall) of WP execution (TTFB) == Changelog == = 1.0 = - Upgraded the underlying library from the abandoned maximebf/debugbar v1 to the maintained php-debugbar/php-debugbar v3, dropping the ancient pinned symfony/var-dumper 3.4.28 - Removed the remote https://s.w.org/ favicon request; the icon is now bundled with the plugin - Refactored all collectors to modern, strictly-typed PHP - Hid more sensitive wp-config.php constants (DB credentials, keys, salts) from the Constants tab - Various small bugfixes (wrong tooltip/icon copy-paste, missing text domain on translatable strings) = 0.2 = - updated debugbar (requires PHP 7.1 now) - added plugin icon = 0.1 = - initial release == Upgrade Notice == = 1.0 = Now requires PHP 8.2 (up from 7.1) to match the upgraded debugbar library. Also fixes a fatal error some installs hit on activation — update is recommended for anyone affected.