Extends the debug-bar plugin with additional tabs to measure runtimes between checkpoints and lookup variable content.
This plugin requires the debug-bar plugin >0.5 and a developers' brain to work correctly.
Add your checkpoints in the index.php or any other template file as shown below.
<?php if (have_posts()) : ?>
<?php Debug_Bar_Extender::instance()->checkpoint('loop start'); ?>
<?php while (have_posts()) : the_post(); ?>
<?php Debug_Bar_Extender::instance()->trace_var( $post ); ?>
<?php Debug_Bar_Extender::instance()->checkpoint('loop1'); ?>
<div <?php post_class() ?> id="post-<?php the_ID(); ?>">
<?php //before_post(); ?>
<h2><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php printf(__('Permanent Link to %s', 'kubrick'), the_title_attribute('echo=0')); ?>"><?php the_title(); ?></a></h2>
<small><?php the_time(get_option('date_format')) ?> by <?php the_author() ?></small>
<div class="entry">
<?php the_content(__('Read the rest of this entry »', 'kubrick')); ?>
</div>
<p class="postmetadata"><?php the_tags(__('Tags:', 'kubrick') . ' ', ', ', '<br />'); ?> <?php printf(__('Posted in %s', 'kubrick'), get_the_category_list(', ')); ?> | <?php edit_post_link(__('Edit', 'kubrick'), '', ' | '); ?> <?php comments_popup_link(__('No Comments »', 'kubrick'), __('1 Comment »', 'kubrick'), __('% Comments »', 'kubrick')); ?></p>
<?php after_post(); ?>
</div>
<?php Debug_Bar_Extender::instance()->checkpoint('loop2'); ?>
<?php endwhile; ?>
<?php Debug_Bar_Extender::instance()->checkpoint('loop end'); ?>
<div class="navigation">
<div class="alignleft"><?php next_posts_link(__('« Older Entries', 'kubrick')) ?></div>
<div class="alignright"><?php previous_posts_link(__('Newer Entries »', 'kubrick')) ?></div>
</div>
<?php else : ?>
Looking at the source of the debug-bar-extender.php you will notice that there are various filters to control the default settings. This is useful when you are working on a multisite install and want to use the debug bar without having to adjust the settings every time. Here's an example of how settings enforced by a php file in mu-plugins/ could look like
add_filter( 'debugbarextender_default_settings', 'my_debug_bar_extender_settings' );
// enforce debug bar settings
function my_debug_bar_extender_settings( $default_settings ) {
$default_settings = array(
'enable_profiler' => 1,
'enable_variable_lookup' => 1,
'track_default_vars' => 0,
'add_default_checkpoints' => 1,
'savequeries_debugmode_enable' => 1,
'use_error_log' => 0,
'allow_url_settings' => 1,
'enable_admin_bar_menu' => 1,
);
return $default_settings;
}
add_filter( 'debugbarextender_default_checkpoint_actions', 'my_debug_bar_extender_checkpoints' );
// initiate some default checkpoints
function my_debug_bar_extender_checkpoints( $default_checkpoints ) {
$default_checkpoints = array(
'muplugins_loaded',
'wp_head',
'wp_footer',
'loop_start',
'loop_end',
'shutdown',
);
return $default_checkpoints;
}
This is a work in progress, so feel free to pass by on our plugin page and leave us your suggestions in the comments.
Requires: 3.1 or higher
Compatible up to: 3.2.1
Last Updated: 2011-9-2
Downloads: 9,332
Got something to say? Need help?