Measure WordPress loading time and queries


GamesGames

During an HTTP request, WordPress executes a lot of queries on your MySQL database. Not just the database queries take time, also loading and executing PHP takes time. How to measure WordPress’ loading time and executed database queries?

WordPress has built in functions to measure PHP‘s loading time and executed MySQL queries. These functions are: get_num_queries() for the number of database queries, and timer_stop() for PHP execution time. You can read all about these functions here and here.

You can simply add the following PHP code somewhere in your theme footer.php file to display these statistics:

<?php echo get_num_queries(); ?> queries in <?php timer_stop(1); ?> seconds.Code language: PHP (php)

After saving this change to your footer.php file, you need to refresh your page in the browser to see the measurements in effect. These numbers give you an idea of how long it took PHP to render your WordPress blog or website.

If you don’t want to mess with theme files, because changes are undone after an update, you can use the wp_footer() action of the Plugin API / Action Reference.

Add the following code to your theme functions.php or your site-specific plugin to measure WordPress’ loading time:

function saotn_php_loadtime_num_queries_footer() {
	echo '<p><small>', get_num_queries(), __(' queries, ');
	timer_stop(1);
	echo __(' seconds.'), '</small></p>';
}
add_action( 'wp_footer', 'saotn_php_loadtime_num_queries_footer', 100 );Code language: PHP (php)
foto van Jan Reilink

About the author

Hi, my name is Jan. I am not a hacker, coder, developer or guru. I am merely a systems administrator, doing my daily SysOps/DevOps thing at cldin. With over 15 years of experience, my specialties include Windows Server, IIS, Linux (CentOS, Debian), security, PHP, websites & optimization.

0 0 votes
Article Rating
Subscribe
Notify of
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x