WordPress Optimization Bible

delicious icon WordPress Optimization Bible f6b22895bc0bea969fc6d73b0699bea4 Bookmark to Delicious

This WordPress optimization tutorial is the most comprehensive guide to WordPress optimization created as a huge collection of tips on how to speed up your WordPress site.

If you ever experienced slow WordPress admin panel, "MySQL server has gone away" message, pages taking forever to load or you want to prepare your site for a major increase in traffic (for example Digg front page) this is the guide for you.

1. Check the Site stats

Most commonly the problem with slow loading sites is just the sheer size of the page. A typical webpage today will be loaded with images, flash, videos and javascripts all which take a significant portion of bandwidth.

If you want to start dealing with this issue seriously you need to get Firefox browser, Firebug extension and Yslow plugin.

Yslow module will allow you to get a performance score from 0-100.  Getting your site to 80+ score should be your aim.

Try to keep your page size under 100KB. Try to keep it under 50kb if possible. If you have a lot of multimedia content then by all means learn to use YSlow.

Learn about ways to improve the page loading speed.

2. Check your (Vista) System

In rare occasions when you are loading your and other sites slowly, it can be your Vista system that is causing the slowdown.

If you are running Vista check this article for a diagnosis and a possible solution.

3. Check the Plugins

Plugins are usually the prime suspect for slowdowns. With so many WordPress plugins around, chance is you might have installed a plugin which does not use the resources in an optimum way.

For example such plugins that caused slowdowns in the past have been Popularity contest, aLinks or @Feed.

To check plugins, deactivate all of them and check the critical areas of the site again. If everything runs OK, re-enable the plugins one by one until you find the problematic plugin.

After finding the cause you can either write a message to the plugin author and hope they fix it or search for an alternative.

4. Check your Theme

If it's not the plugins, and you are troubleshooting slowdown of the site, you should check it with a different theme.

Themes can include code with plugin capabilities inside the theme's function.php file so everything what applies to plugins can apply to the theme.

Also, themes may use excessive JavaScript or image files, causing slow loading of the page because of huge amount of data to transfer and/or number of http requests used.

WordPress comes installed with a default theme and it's best used to test the site if your theme is the suspect for poor performance.

If you discover your theme is causing the slowdowns, you can use the excellent Firebug tool for Firefox browser to debug the problem. Learn more about Firebug, your new best friend.

You can also use this site get general information about the site very fast.

5. Optimize Database Tables

Database tables should be periodically optimized (and repaired if necessary) for optimum performance.

I recommend using WP-DBManager plugin which provides this functionality as well as database backup, all crucial for any blog installation.

WP-DBManager allows you to schedule and forget, and it will take care of all the work automatically.

Other alternative is manually optimizing and repairing your table through a tool like phpmyadmin.

6. Turn off Post Revisions

With WordPress 2.6, post version tracking mechanism was introduced. For example, every time you "Save" a post, a revision is written to the database. If you do not need this feature you can easily turn it off by adding one line to your wp-config.php file, found in the installation directory of your WordPress site:

define('WP_POST_REVISIONS', false);

If you have run a blog with revisions turned on for a while, chance is you will have a lot of revision posts in your database. if you wish to remove them for good, simply run this query (for example using the mentioned WP-DBManager) plugin.

DELETE FROM wp_posts WHERE post_type = "revision";

This will remove all "revision" posts from your database, making it smaller in the process.

NOTE: Do this with care. If you are not sure what you are doing, make sure to at least create a backup of the database first or even better, ask a professional to help you.

7. Implement Caching

Caching is a method of retrieving data from a ready storage (cache) instead of using resources to generate it every time the same information is needed. Using cache is much faster way to retrieve information and is generally recommended practice for most modern applications.

7.1 WordPress Cache

The easiest way to implement caching (and usually the only way if your blog is on shared hosting) is to use a caching plugin.

The most commonly used is WP Super Cache which is easy to install and setup.

If you run our own server you have several more options.

7.2 MySQL Optimization

MySQL can save the results of a query in it's own cache. To enable it edit the MySQL configuration file (usually /etc/my.cnf) and add these lines:

query_cache_type = 1
query_cache_limit = 1M
query_cache_size = 16M

This will create a 16 MB query cache after you restart the MySQL server.

To check if it is properly running, run this query:

SHOW STATUS LIKE 'Qcache%';

Example result:

Qcache_free_blocks 718
Qcache_free_memory 13004008
Qcache_hits 780759
Qcache_inserts 56292
Qcache_lowmem_prunes 0
Qcache_not_cached 3711
Qcache_queries_in_cache 1715
Qcache_total_blocks 4344

Tip #1: If you are expecting a Digg Front Page you are likely to exceed your current limit of maximum concurrent MySQL connections which is among the prime reasons a site failing a Digg traffic spike.

You can prepare by increasing this number to about 200 using this line in the config file.

max_connections = 200

Here is a further read regarding MySQL optimization and another one here. You can also install mytop, a 'top' command clone that works with MySQL. Extremely useful mysqlrepot tool will help you tweak that mysql like nothing.

7.3 PHP Opcode Cache

PHP is interpreted language, meaning that every time PHP code is started, it is compiled into the so called op-codes, which are then run by the system. This compilation process can be cached by installing an opcode cache such as eAccelerator. There are other caching solutions out there as well.

To install eAccelerator, unpack the archive and go to the eAccelerator folder. Then type:

phpize
./configure
make
make install

This will install eAccelerrator.

Next create temp folder for storage:

mkdir /var/cache/eaccelerator

chmod 0777 /var/cache/eaccelerator

Finally to enable it, add these lines to the end of your php.ini file (usually /etc/php.ini or /usr/lib/php.ini):

extension="eaccelerator.so"
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/var/cache/eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"

The changes will be noticeable at once, as PHP does not need to be 'restarted'.

Note #1: WP Super Cache and eAccelerator work just fine together showing further increase in performance.

Note #2: If you like cutting edge and even more possibility for performance, check the ultra cool WP Super Cache and eAccelerator plugin.

Note #3: You can easily test changes in your configuration by running a test from your command prompt

ab -t30 -c5 http://www.mysite.com/

and comparing results. I get around 200 req/s on VPS server.

Note #4: Apache optimization is out of scope of this article but you can find extensive information here. Indepth apache compilation tips here, also vps tips here and keep alive tips here.

Note #5: You can find even more tips&tricks on Elliot Back's site (and he plays DOTA too, how cool is that).

Note #6: Unfortunately eAccelerator won't work if PHP is run as CGI. You can try using fastcgi which will work with suExec and eAccelerator.

Note #7: More cool resources. Optimizing Page load time and a great series on website performance.

8. "MySQL server has gone away" workaround

This WordPress database error appears on certain configurations and it manifests in very slow and no response, usually on your admin pages.

Workaround for this MySQL problem has been best addressed in this article.

This problem evidently exists, but the suggested fix is valid only until you upgrade your WordPress. Hopefully it will be further researched and added into the WordPress core in the future.

9. Fixing posting not possible problem

If you experience WordPress admin panel crawling to a halt, with inability to post or update certain posts, you are probably hitting the mod_security wall.

ModSecurity is Apache module for increasing web site security by preventing system intrusions. However, sometimes it may decide that your perfectly normal WordPress MySQL query is trying to do something suspicious and black list it, which manifests in very slow or no response of the site.

To test if this is the case, check your Apache error log, for example:

tail -f /usr/local/apache/logs/error_log

and look for something like this:

ModSecurity: Access denied with code 500 (phase 2) ... [id "300013"] [rev "1"] [msg "Generic SQL injection protection"] [severity "CRITICAL"] [hostname  www.prelovac.com"] [uri "/vladimir/wp-admin/page.php"

It tells you the access for this page was denied because of a security rule with id 300013. Fixing this includes white-listing this rule for the page in question.

To do that, edit apache config file (for example /usr/local/apache/conf/modsec2/exclude.conf) and add these lines:

<LocationMatch "/vladimir/wp-admin/page.php">
SecRuleRemoveById 300013
</LocationMatch>

This will white list the page for the given security rule and your site will continue to work normally.

10. RSS Pings and Pingbacks

Reasons for slow WordPress posting may include rss ping and pingback timeouts.

By default WordPress will try to ping servers listed in your ping list (found in Settings->Writing panel) and one of them may timeout slowing the entire process.

Second reason are post pingbacks, mechanism in which WordPress notifies the sites you linked to in your article. You can disable pingbacks in Settings->Discussion by un-checking option "Attempt to notify any blogs linked to from the article (slows down posting)".

Try clearing ping list and disabling pingbacks to see if that helps speed up your posting time.

Following are the general Rules for optimizing page loading time

11. Use subdomains to share the load

Most browsers are set to load 2-4 files from a domain in parallel. If you move some files to a different domain (subdomain will work) the browser will start downloading 2-4 more files in parallel.

It is good idea to move your theme image files to a subdomain you create. I have created demo.prelovac.com/images and moved my theme images there. I have then changed the theme style.css to reflect the full url to the new image files. Job done!

12. Minimize the number of HTTP requests

You can lower the number of HTTP requests by using fewer images (or placing all images in one large image and position them with CSS), fewer javascripts, fewer css files (usually meaning fewer plugins).

Good effort has been made by PHP speedy plugin which will merge all your JavaScript and all CSS files in one big file which really helps in lowering the HTTP request numbers. The biggest drawback of PHP Speedy is that it's not 100% compatible with all plugins.

Also use the CSS Sprite generator to move all your images into one image and then use CSS background-position to display them. This will cut your number of HTTP requests significantly.

13. Compress the content using apache .htaccess

If you have our own server you can chose to gzip all content sent to browsers. This will lower the loading time significantly as most html pages compress very well.

Add this code to your .htaccess

AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/javascript application/x-javascript application/x-httpd-php application/rss+xml application/atom_xml text/javascrip

14. Create expires headers

Expire headers tell the browser how long it should keep the content in cache. Most of the images on your site never change and it is good idea to keep them cached locally.

Here is a recommended setting:

Header unset Pragma
FileETag None
Header unset ETag
 
# 1 YEAR
 
Header set Cache-Control "public"
Header set Expires "Thu, 15 Apr 2010 20:00:00 GMT"
Header unset Last-Modified
 
# 2 HOURS
 
Header set Cache-Control "max-age=7200, must-revalidate"
 
# CACHED FOREVER
# MOD_REWRITE TO RENAME EVERY CHANGE
 
Header set Cache-Control "public"
Header set Expires "Thu, 15 Apr 2010 20:00:00 GMT"
Header unset Last-Modified

Use cacheability engine to check your cache configuration.

15. Cache Gravatars

Many blogs use Gravatars, the little images next to your comments. However gravatars have two big flaws in regards to site optimization:

What we can do is create a local gravatar cache, where images would be cached and served from our site. Ideally you would place the gravatar cache on a separate subdomain (see first heading).

I use a plugin from Zenpax.com which allows all gravatars to be cached locally.

16. Optimize the images with smush.it

It is often overlooked that your images can be optimized (made smaller) which can significantly reduce loading times.

Wouldn't it be perfect if you could open a site, press a button in your browser and get all images on the site optimized and made available in a single zip file. That is possible thanks to smush.it and their Firefox plugin. It is amazing how effective this is!

17. CSS on top, JavaScript on bottom

It is golden practice to put CSS files on top of the page so they are loaded first. JavaScript files should be placed on the bottom of the page (when possible). I have created a simple plugin which will move the properly registered JavaScript files to the bottom of your pages. The plugin is called Footer javaScript.

Conclusion

Modern webservers and websites have grown to depend on many different factors.

This article covered various approaches to optimization from system level apache, PHP and MySQL changes to settings within your WordPress.

I hope following this guide will help you create a fast and responsive WordPress based site.


150 comments, newest first

Jump to main menu | Jump to comment form | Toggle comments
  1. Vladimir 07.02.09 / 4pm

    I didn't, 149 comments with their own gravatar images did.

  2. I83 Design 07.02.09 / 4pm

    This is a great list but I am confused, according to your number one rule, 100K or less, this page is showing as a grade of C with 229K. Is there a reason why you exceed your own suggestion?

  3. Guillermo Lopez 06.30.09 / 11am

    Very useful article, thanks!

  4. explaisntuff 06.26.09 / 10pm

    Thanks a lot vladimir! Very well composed and systematic explanation of each point mentioned.

  5. kazama 06.26.09 / 2am

    very good tips. One of my wordpress web is very slow. I will try yslow plugin first.

  6. Sathyavrathan PK 06.24.09 / 8am

    A very useful article...thanks for sharing....!

  7. Bekleidung 06.04.09 / 6pm

    those are bunch of helpful tips,
    I never knew about smush.it,wp-dbmaneger will try most of them which i can and see what Difference in my blog i can see, Hope my blog Gets Fast

  8. Cappadocia 05.31.09 / 1pm

    This is useful especially for beginner like me

  9. Eglence 05.31.09 / 1pm

    Good one. Been using some others of Lester Chan's great bunch of plugins but will now try out his DB manager.

  10. Kırtasiye 05.24.09 / 9pm

    Very like WordPress Optimization

  11. Diyet 05.19.09 / 5pm

    nice tips thx

  12. tagecho se seagull 05.17.09 / 3pm

    Got the Guide thanks.

  13. Harsh Agrawal 05.17.09 / 1am

    Great tips. My dreamhost Crashed and they pointed my to this post to optimize my wordpress. I will certainly make changes as mentioned.

  14. 2008年国外最佳Web设计/开发技巧、脚本及资源总结 | ONEDUST - 浮塵草堂 05.13.09 / 6pm

    [...] 使用CSS为图片添加更多趣味的5种方法(已翻译成中文) 10个优化技巧 所有网站都应具备的10个SEO元素 编写赏心悦目的代码的7种方法 [...]

  15. Tips para que tu blog en Wordpress cargue más rápido | Punto Geek 05.12.09 / 3pm

    [...] WordPress Optimization Bible [...]

  16. Life in POD-land : The Head Camper - NickScipio.com 05.03.09 / 2am

    [...] rapidly escalated to squeaks of terror. So I spent several weeks learning about Apache, MySQL, and WordPress optimization. When all was said and done, I’d managed to drop the server load from 100% to 35%  or so, [...]

  17. Strangely 04.29.09 / 11pm

    Thanks for all these tips Vladimir. You've give me quite a few pointers to work through... For tables optimisation, I've used a plugin called WP-Optimize that works fine for me! I used to go into phpAdmin but this does the job quicker. It does a few other tricks as well.

  18. David Harrington 04.24.09 / 2pm

    Vladimir: Thanks again! Not only is your page incredibly helpful, but your comments are really helpful too.

  19. Vladimir 04.24.09 / 8am

    david:
    1. Is it better for my server's speed/health to manually edit the code and use Google Ajax Libraries or to use the plugins for Wordpress?

    Always better to use plugins for flexibility.

    2. If I am using Yslow and a CDN and Google Libraries, it looks like I get penalized in Yslow for multiple DNS lookups. Is there a way around this?

    It's a matter of balancing these out but typically dns lookups are very fast.

    3. Is there a good way to add Sharethis to my Wordpress blog that won't screw up Yslow?

    yeah, make your own icons and submit links.

  20. John Zoum 04.23.09 / 6pm

    Vladimir,

    thanks for these tips. I am going to experiment with the caching options you have suggested. Appreciated amigo.

    -John

  21. David Harrington 04.21.09 / 4pm

    Thanks so much for this guide. I've used your tips to get my Yslow rating much higher. (At the moment some of the options are turned off while I use an outside programmer for something else, so don't judge me.)

    A few things I discovered and wanted to add:

    * Those of us on Bluehost will have a harder time installing eaccelerator. There is a good guide here:
    http://rk.md/2008/eaccel-bluehost/

    * I've discovered that Google App Engine is a wonderful CDN tool, and it should be cheap even if my site happens to take off. I don't know any Python, but it's a snap if you install the Google App Engine launcher (I use the Mac program) and combine it with the instructions at: http://24ways.org/2008/using-google-app-engine-as-your-own-cdn. Then you can start offloading images and scripts to appspot.com.

    * Finally, Google Ajax Libraries can also offload a lot of content: http://code.google.com/apis/ajaxlibs/. Wordpress even has plugins that will do this.

    A few questions:

    1. Is it better for my server's speed/health to manually edit the code and use Google Ajax Libraries or to use the plugins for Wordpress?

    2. If I am using Yslow and a CDN and Google Libraries, it looks like I get penalized in Yslow for multiple DNS lookups. Is there a way around this?

    3. Is there a good way to add Sharethis to my Wordpress blog that won't screw up Yslow?

    Thanks! I am such a novice at this but I want to be a nerd.

  22. 我想网 » Blog Archive » 2008年国外最佳Web设计/开发技巧、脚本及资源总结 04.21.09 / 9am

    [...] 10个优化技巧 [...]

  23. Wp blogg - Side 2 - Webforumet.no - Webmaster forum 04.20.09 / 3pm

    [...] serveren, men om tingen er at du kun vil ha ned loaden p

  24. Wp blogg - Webforumet.no - Webmaster forum 04.20.09 / 2pm

    [...] serveren, men om tingen er at du kun vil ha ned loaden p

  25. Slow Loading | A Little Bird Told Me | Samantha Armacost's Portfolio Site 04.12.09 / 7pm

    [...] Vladimir Prelovac’s WordPress Optimization Bible [...]

  26. 24Seven 04.07.09 / 10pm

    Hope you don't mind but we've added you as source for good info on our site ... it only makes sense!

  27. links for 2009-03-30 - ArcIris- Web Design in Spain, Remote Support | Diseño Web y Soporte Remoto · Arc Iris 03.30.09 / 9pm

    [...] WordPress Optimization Bible (tags: wordpress optimisation) [...]

  28. ashly 03.29.09 / 12pm

    wow, excellent blog post. Some super information here to optimise and speed up any wordpress blog! I suppose one thing to make sure is alos to have a good web host too! I have had lots of issues with this before!

  29. Vladimir 03.26.09 / 1pm

    That's a fair point Marc, however the content on this page gets low score because of external resources over which I have no control of (digg, gravatar etc.) My home page has score 83 and is failing to reach 90 only because the CDN is not on yahoo server - the only cdn yslow recognizes. Other losses are due to wordpress plugins, and its a matter of balancing usability and convenience with speed.

  30. Marc 03.26.09 / 1pm

    Regarding YSlow. I'll play with it a while longer but I have looked at many sites, including this one, that have the "Top XX Recommendations on Speeding up a WP Site" and frankly they all fail the YSlow test miserably. Are you/they all not taking their own advice or is YSlow really useful at all?

  31. 2008年国外web资源素材帖集锦 | ITer 03.24.09 / 1am

    [...] 10个优化技巧 [...]

  32. WordPress深度优化加速:Gzip压缩js和css - Jeff-Chen.Com 03.22.09 / 8am

    [...] 类似方法参考:Gzipping CSS and Javascript files 其它数据记录: .WordPress Optimization Bible .加速blog:序 .JavaScript Minifier .Online YUI Compressor [...]

  33. NJ SEO 03.22.09 / 8am

    Thanks Vlad... the Yslow tip is really fantastic. I've been using an online site for years and I always wondered what would happen if that site went away. But with Yslow bolting right onto Firebug it's convenient... always a click away. No worries now. Cheers -

  34. Session 03.21.09 / 7pm

    Than you for these tips. I just rented new dedicated server and I optimized my wordpress and server by your tips.

    Now I had upload of 90mbps!!! and my memory was just 20% taken, load was up to 3 and my server worked like a charm!

    Greetings from Serbia! ;)

  35. Rishi 03.21.09 / 4pm

    Fantastic guide! A real "Bible" in WordPress optimization. Just as a side note, I've noticed better performance with the XCache PHP opcode cacher in place of eAccelerator. :-)

  36. Victor 03.20.09 / 9pm

    thanks! very interesting....

    but i don't understand how to Create expires headers

  37. Steve Adams 03.19.09 / 3pm

    Great article! Thank you for putting this together. I will implement them on all future projetcs. When time allows, I will go back and update previous sites.

    Thx,
    Steve

  38. WordPress Optimization Bible 03.18.09 / 7pm

    [...] We have been asked many times about issues with sites and pages loading slowly. If you have ever experienced this problem and are looking for ways to Optimize your Blog or want to prepare in anticipation of major traffic, then you should read Vladimir Prelovac’s article, WordPress Optimization Bible. [...]

  39. kovshenin 03.16.09 / 11am

    Good points you got there. Thanks!

  40. blogger 03.13.09 / 12am

    very good post thx

  41. blogger 03.13.09 / 12am

    nice tips thx

  42. WordPress 优化宝典 | Wpfans 03.06.09 / 11am

    [...] 原文: WordPress Optimization Bible [...]

  43. blogger 03.06.09 / 11am

    Good job man. Very value article

  44. Seo 03.06.09 / 10am

    thx man for tips

  45. WordPress 最好的速度优化宝典 - Jeff-Chen.Com 03.03.09 / 10am

    [...] 原文: WordPress Optimization Bible [...]

  46. 網站瘦身wordpress加速大作戰 gzip壓縮js和css | 時間不等於金錢 02.24.09 / 10am

    [...] .WordPress Optimization Bible .加速blog:序 .JavaScript Minifier .优化Wordpress-wp终极优化手册 [...]

  47. Marcos 02.18.09 / 3pm

    Very value article.And importants points to optimize our sites. Thanks.

  48. Anthony Lepki 02.11.09 / 8am

    This post is an absolute keeper with technical tips most people would not even consider on using with their WordPress blogs. My concern is alway to optimize my blogs for performance, glad to see others are writing about this. Thanks

  49. Jason 02.05.09 / 12am

    Amazing guide. Thanks for creating it.

  50. Ostatnio diety i odchudzanie to bardzo modny temat. Postanowiłem sprawdzić jak to jest "Lekki" SEO i bezpieczny Wordpressz WordPressem. Należy mu się odchudzanie, czy nie? | Serwis4U 01.29.09 / 9am

    [...] wyłączenie Post Revision - opisane tutaj pkt. 7 [...]

  51. Pupsor 01.27.09 / 7am

    Good job! I'll use it for mysql. But i have one question about webserver. What do you think about nginx or lighthttp? it can be help me with many http requests, is it right?

  52. Keith Collantine 01.26.09 / 11pm

    Excellent compilation of tips, Vladimir! However the link to Firebug has a typo in it...

  53. Nex blog » Blog Archive » Links del giorno: January 26, 2009 01.26.09 / 6am

    [...] WordPress Optimization Bible [...]

  54. Nex blog » Links del giorno: January 25, 2009 01.25.09 / 1am

    [...] WordPress Optimization Bible [...]

  55. Nex blog » Shared Items - January 25, 2009 01.25.09 / 12am

    [...] WordPress Optimization Bible [...]

  56. SuperJavaSon » 2008年国外最佳Web设计/开发技巧、脚本及资源总结 01.14.09 / 3pm

    [...] 10个优化技巧 [...]

  57. Optymalizacja Wordpress’a :: Wordpress SEO 01.13.09 / 9am

    [...] zaprzęgłem Google do roboty i znalazłem kilka wpisów traktujących o optymalizacji Wordpressa. Jeden wpis jak i cały blog okazał się kopalnią wiedzy na ten temat, dlatego postanowiłem wykonać [...]

  58. 2008年国外最佳Web设计/开发技巧、脚本及资源总结 | 紧跟IT潮流 01.13.09 / 3am

    [...] 使用CSS为图片添加更多趣味的5种方法(已翻译成中文) 10个优化技巧 所有网站都应具备的10个SEO元素 编写赏心悦目的代码的7种方法 [...]

  59. Hacks to boost your WordPress 2.7 blog 01.12.09 / 8pm

    [...] WordPress Optimization Bible [...]

  60. 小卡在线 _kavid.net_中国最中立的大众产品评测网站_着意生活,分享快乐_汽车评测_电脑评测_数码评测_玩具评测_日用品评测 01.12.09 / 1pm

    [...] 使用CSS为图片添加更多趣味的5种方法(已翻译成中文) 10个优化技巧 所有网站都应具备的10个SEO元素 编写赏心悦目的代码的7种方法 [...]

  61. jhesqi 01.08.09 / 11am

    Nice post. I will certainly make adjustments on my own website. Kudos!

  62. 转载 –2008年最佳Web设计/前端开发技巧、脚本及资源总结 « Eva’s Blog 01.08.09 / 9am

    [...] 10个优化技巧 [...]

  63. GM 01.07.09 / 2pm

    These is a Great Guide. I'm so lazy and really just wish that i could do this with an automated script.

    Makes me think, if somebody create a Wordpress optimizer Plugin, can you imagine the Response?

  64. 2008年国外最佳Web设计/开发技巧、脚本及资源总结 - EventID中文网 01.05.09 / 5pm

    [...] 10个优化技巧 [...]

  65. 5ihappy工作室 » 2008年国外最佳Web设计/开发技巧、脚本及资源总结 01.05.09 / 5am

    [...] 10个优化技巧 [...]

  66. GRINDSTONE MEDIA - Wordpress theme design, a few tips 01.04.09 / 8pm

    [...] finally, remember to optimize your blog. Vladimir Prelovac had a great post listing a few techniques. 28.11.2008 | Category: Wordpress | Trackback: [...]

  67. Bob Hitching 01.03.09 / 1pm

    Great info, thanks. Minor point, but I think you might have a typo in your #13 code snippet; the final 't' is missing from text/javascript.

  68. cssframework » 2008年国外最佳Web设计/开发技巧、脚本及资源总结 01.03.09 / 11am

    [...] 10个优化技巧 [...]

  69. 2008年国外最佳Web设计、开发技巧、脚本及资源总结 at 左岸开发 01.01.09 / 12pm

    [...] 10个优化技巧 [...]

  70. IT Magzine : Best resources for developers: 2008+ tips, tricks, scripts and sources 12.31.08 / 7am

    [...] CSS Code 12 Principles For Keeping Your Code Clean 10 Advanced PHP Tips To Improve Your Programming 10 Optimization Tips 10 SEO elements all websites should have 10 Web App Tips From 8 Inspirational Speakers 7 ways to [...]

  71. Hisham 12.13.08 / 3pm

    Great article with lots of information, helped me to solve some problem, thanks for sharing.

  72. rajaotai 12.12.08 / 3am

    cool. i like this

  73. Money Ideas 12.10.08 / 2am

    Wooow, great guide man! Thanks.

  74. WordPress - An Icon Of Its Time | BlogBroker24-7 12.01.08 / 3pm

    [...] 10 Tip Optimization Guide [...]

  75. David.R.Gilson » Blog Archive » Bookmarks for November 13th through December 1st 12.01.08 / 11am

    [...] WordPress Optimization Guide - This WordPress optimization guide is a collection of useful tips and tutorials on how to speed up your WordPress site. [...]

  76. kabarmadura 11.24.08 / 4am

    great ... thanks
    increase my weblog performance

    thanks for sharing

  77. cls500 11.24.08 / 4am

    How about optimization in a hosted environment? I use GoDaddy.com for my blog and don't have the ability to add additional software or run commands.

  78. Prelovac’s WordPress Optimization Guide | Webmaster-Source 11.23.08 / 12pm

    [...] Prelovac has an excellent article on optimizing WordPress for speed available now. It covers plenty of bases, such [...]

  79. hamdan 11.22.08 / 11pm

    oh, and how about flash content? it surely eat up bandwidth, isn't it??

  80. hamdan 11.22.08 / 11pm

    Thank you for the tips. I just realize that popularity contest will reduce the wp performance. And I will implement wp super cache too.
    It should be noted though that traceroute or ping should be run from some different sources to determine the speed or loading time of the wordpress installed more accurately.

  81. Vladimir 11.21.08 / 8pm

    Rewritten it today give it a try ;)

  82. Jürgen Wagner 11.21.08 / 10am

    Nice article, however, it covers the more obvious items only... plus, one of the culprits of making my blog extremely slow in page display was your SEO Automatic Links plugin ;-) With a large number of tags and categories, the replacement process is by far too inefficient and requires to many iterations on costly string manipulations. I'll try to rewrite that some time.

    Cheers,
    --Jürgen

  83. Plugins, resources, and a yawn « Feet up, eyes closed, head back 11.18.08 / 7am

    [...] WordPress Optimization Guide … not sure there’s a need, but *sigh* [...]

  84. Hem 11.17.08 / 7pm

    Really great article.... Very much informative

  85. Kasumi 11.17.08 / 4pm

    Very useful optimisation guide Vladimir

  86. Links der Woche 11.17.08 / 12pm

    [...] Blog: 10 Optimierungstipps (auch [...]

  87. steve w 11.16.08 / 11pm

    Fantastic posting. Deleting post revisions particularly helpful. Thanks.

  88. Rocio 11.16.08 / 1pm

    Thanks for the point 6. "Turn off Post Revisions"

    Is great for my dabatbase performance and size.

    Salutatins

  89. photoTristan 11.16.08 / 8am

    PS, the deleting revisions should be double quotes around the word revision not single quotes as above. At least that is what worked for me.

  90. photoTristan 11.15.08 / 6pm

    @Yannick - Most shared hosting plans will not let you do all that is mentioned in this post. You would need a dedicated or (virtual dedicated server) which costs more.

  91. DemoGeek 11.14.08 / 11pm

    The tip about revisions really helped. It reduced my DB size by almost 40%. Great article.

  92. Nunzio 11.14.08 / 8pm

    Great work!

  93. Fastlane MJ 11.14.08 / 4pm

    Excellent article ... was having some stalling issues with my WP site and this helped me isolate the problem.

  94. 10 Best Tips for WordPress Optimization « Element J 11.14.08 / 4pm

    [...] read more | digg story [...]

  95. top free hosting 11.14.08 / 4am

    i use the cache plugins too...

  96. statistic blog 11.14.08 / 12am

    wow nice tips bro

  97. Jaki 11.13.08 / 8pm

    This is really, really helpful. I'm sure you took quite a bit of time to actually compile this. This kind of stuff only comes with experience, so thanks for sharing!

  98. Jonathan Hensley | The Blog » Quick Links for Nov 13th 11.13.08 / 7pm

    [...] 10 Best Tips for WordPress OptimizationThis WordPress optimization guide is a collection of useful tips and tutorials on how to speed up your WordPress site. [...]

  99. Amit 11.13.08 / 6pm

    Brilliant post there buddy, I know that wordpress is not the out of the box solution but this one will surely help a lot.

  100. Lisa 11.13.08 / 5pm

    Holy cow! Just from removing all the revisions, my post database went from almost 700 lines down to 300. Thanks for the code to shut revisions off.

  101. links for 2008-11-13 « Cakeaholics Anonymous 11.13.08 / 4pm

    [...] 10 Best Tips for WordPress Optimization (tags: web software WebDesign blog tech tips howTo blogs php list article cms wordpress website blogging webdev database mysql speed) [...]

  102. sunder 11.13.08 / 4pm

    this is one of the best article i read about wordpress optimization, for the caching side try for 1bolgcher for best results

  103. Justin 11.13.08 / 7am

    Kudos. A very well researched and crisply writtenarticle.

  104. Darjeeling Info 11.13.08 / 6am

    Great tips, helped me optimize mine.

  105. Tinh 11.13.08 / 6am

    great tips, thanks for sharing these tips. Tinh

  106. links for 2008-11-12 at DeStructUred Blog 11.13.08 / 3am

    [...] 10 Best Tips for WordPress Optimization (tags: wordpress website webdesign tips tech) [...]

  107. Michael Perry 11.13.08 / 3am

    Thank you very much for these great recommendations.

    Tips 3, 6 and 10 appear to be gems; all of these tips are diamonds.

    Appreciate the insights...

    Michael G Perry
    Las Vegas, Nevada

  108. byme 11.13.08 / 1am

    Nice info brother,
    cool
    byme

  109. Yannick 11.13.08 / 12am

    Thanks for you guide (sorry for my english).

    Do you have a suggesion for the best web hosting provider. I have a accunt on MediaTemple but if I want control the MySQL process, MediaTemple charge a big price (for a smal blog :-) ).

    Thanks again.

  110. wolkanca 11.13.08 / 12am

    thanks very useful tips for wordpress blogger.

  111. Wordpress langsam? 10 Tipps zur Performance-Steigerung | tekka.de 11.12.08 / 11pm

    [...] gibt 10 hilfreiche Tipps, um die Performance von Wordpress zu optimieren. Unter dem Titel “10 Best Tips for WordPress Optimization” zeigt Vladimir Möglichkeiten, um den Speed von Wordpress zu [...]

  112. Hisham 11.12.08 / 11pm

    Thanks for the useful information!

  113. Internet Business Blogger 11.12.08 / 10pm

    Great tips. I have not had problems with this kind of problem really since I moved from Movable Type.

    The one plugin that still does cause me a problem though is SRG Clean Archives. As much as I love the plugin it really is a bit of a load on posting and I would constantly get errors wehn posting to a blog where there is a lot off posts (500+ posts).

  114. Velvet Blues 11.12.08 / 10pm

    Great tips. We just started using caching plugins ourselves, and have noticed huge improvements over all of our blogs, especially on those that are hosted on bad web hosts.

  115. Ext JS for Beginners 11.12.08 / 10pm

    Hey!
    These are some really great tips, I especially like the caching one, and the post revision one.
    I use the source code plugins so making sure that your post looks right requires a lot of "Save" > "Preview" which I'm guessing from what you've written will be creating a lot of revision style posts...and on a shared host like you mention would slow the queries right down!

    I'm just heading over to my blog now to implement some caching and delete revision posts now. Thanks for the tips!!!

    Take Care

    James

  116. [Links] De 11 Novembro até 12 Novembro | BlogueIsso! 11.12.08 / 8pm

    [...] 10 Best Tips for WordPress Optimization - para otimizar um site WordPress. Newspaper Website Design: Trends And Examples | Design Showcase | Smashing Magazine - análise comparativa de tendências de design em sites de jornal. Plogger | open source photo gallery PHP script | free image gallery script - script para galerias de fotos. the evolution of the front page | serial consign - pequena análise sobre capas de impresso e digital. Debate na USP isola falácias sobre exigência do diploma « Laudas Críticas - Tuffani em mais um artigo lúcido sobre a obrigatoriedade do diploma para jornalistas. Compartilhe: [...]

  117. Science Tech News 11.12.08 / 8pm

    Really nice tips. I found my site's problem. I'll change my hosting provider.

  118. Vladimir 11.12.08 / 8pm

    Great work deserves credit :P

  119. GaMerZ 11.12.08 / 8pm

    Thanks for including my WP-DBManager to the list =D

  120. Umut 11.12.08 / 7pm

    This was really very helpful. Thanks.

  121. CompuPro » Blog Archive » Оптимизируем WordPress 11.12.08 / 6pm

    [...] По материалам статьи 10 Best Tips for WordPress Optimization [...]

  122. Jaems 11.12.08 / 6pm

    This was really helpful!!

  123. 10 Best Tips for WordPress Optimization » Techtites 11.12.08 / 6pm

    [...] 10 Best Tips for WordPress Optimization covers ten things you can do to make your website faster. Among these are installing cleaning up your WordPress plugins and themes, installing caching plugins, enabling PHP and mySQL caching and links to other articles on optimizing Apache etc. [...]

  124. Agabus (mark adams) 11.12.08 / 5pm

    [...] quite popular, has written this excellent article on ways to optimize your WordPress installation: 10 Best Tips for WordPress Optimization. One additional technical note: Get a good host provider. Most bloggers purchase shared hosting, [...]

  125. Banago 11.12.08 / 5pm

    This is a great post. Thanks for writing it and sharing with us.

  126. Michael 11.12.08 / 5pm

    A lot of these tips really require you to have access to low level things, having either a server or a virtual private server. That's not a huge deal, since you can get a vps for close to the same price as shared hosting these days.

    Along the same lines, if you do have access to control the server, you may forgo apache altogether in favor of a lightweight server like nginx or lighttpd.

  127. Jay Kishor 11.12.08 / 5pm

    I liked most "MySQL" tips. I think it is major part in the WordPress optimization. All tips are well informative and nice.

    Thanks
    http://blogs.ibibo.com/mybiography/

  128. sarpras 11.12.08 / 5pm

    very useful tips for wordpress blogger.

    I run tracert http://www.articles2u.com

    19. 320ms 320ms 328ms 64.22.101.2006

    My Connection is fast? - Help me

  129. Midnight 11.12.08 / 5pm

    Very useful tips, definitely bookmark worthy.

  130. wynddell-kingdom303 11.12.08 / 5pm

    This is what I've been looking for to help in my blogging.

  131. matt 11.12.08 / 4pm

    thanks for the tips. I had heard of a few of these before - but several I had never considered. thanks again! it was good read.

  132. Rajeev Edmonds 11.12.08 / 4pm

    These methods definitely speed up and optimize the Wordpress installation. Thanks for sharing.

  133. WordsnCollision 11.12.08 / 4pm

    WordPress is an exceptional platform and these tips are a huge help to people who want to exploit it to the fullest. Thanks for taking the time to provide the details.

  134. BOB 11.12.08 / 3pm

    Так хочется эти же типы только на русском =(

  135. Rob 11.12.08 / 3pm

    Great stuff here. I've been struggling with my blogs as of late, trying to speed them up and this really helped.

  136. UK TV Guide 11.12.08 / 2pm

    I didn't know about WP-DBManager, thanks. Nice list.

  137. nerdd.net | news and opinion 11.12.08 / 2pm

    10 Best Tips for WordPress Optimization | nerdd.net...

    \r\nThis WordPress optimization guide is a collection of useful tips and tutorials on how to speed u...

  138. JamesSpratt.org 11.12.08 / 2pm

    Good one. Been using some others of Lester Chan's great bunch of plugins but will now try out his DB manager.

    Cheers Vlad.

    James

    http://jamesspratt.org/

  139. 10 Best Tips for WordPress Optimization | DiggoMania 11.12.08 / 2pm

    [...] read more | digg story [...]

  140. John MAson 11.12.08 / 2pm

    Wow dude, excellent tips. Thanks for sharing them.

    Jess
    http://www.anolite.echoz.com

  141. John Baker 11.12.08 / 2pm

    OK, that's given me some work to do. Thanks, a great article with really useful info.

  142. Stuart Foster 11.12.08 / 2pm

    Great advice...especially for a relative Wordpress noob like myself. I just started hosting my own site on GoDaddy, after having it exist for a long time (without CSS access on Wordpress's own server). Great advice, and I will definitely be applying it to my blog. Thanks!

  143. Ariejan de Vroom 11.12.08 / 2pm

    Also check my article on how to digg-proof your Wordpress blog.

    Making your blog digg-proof not only means you are better suited to survive when your site hits the digg frontpage, it also means that page load times in general drop down a lot!

    http://ariejan.net/2008/07/09/how-to-digg-proof-your-wordpress-blog/

  144. 10 Best Tips for WordPress Optimization · Reallyfirst.com 11.12.08 / 2pm

    [...] read more | digg story [...]

  145. Yong Hwee 11.12.08 / 1pm

    Dude, these tips are awesome! Congrats on making the Digg frontpage..

  146. Gurgaon 11.12.08 / 1pm

    NIce information about word press blogging thanks!!!!

  147. whlooi 11.12.08 / 8am

    This is useful especially for beginner like me. Thanks for putting this up. ^^; For the WP on shared hosting, once may opt for dedicated IP. It helps.

  148. Ivan | Irish Blogger 11.11.08 / 5pm

    Also check as much as you can before purchasing your hosting account. That is especially true with Shared Hosting. Google their company names for the user reviews...

    Ivan | http://www.IrishBlogger.ie

  149. Dee 11.11.08 / 1pm

    Thank you so much for these interesting and usefull tips. Especially 6 (didn't know you could turn it of), 9 & 10. Keep up the good work!

  150. usrbingeek 11.11.08 / 12am

    Don't you mean single quotes on: define('WP_POST_REVISIONS', false);

    and wouldn't you need single quotes on this too?
    DELETE FROM wp_posts WHERE post_type = 'revision';

Have your say, text or video





About

vladimir prelovacHi! My name is Vladimir Prelovac. I am a computer engineer by profession and an adventurer by state of mind.

Check out my current projects.

I wrote a book on WordPress Plugin Development.

I specialize in WordPress Solutions, SEO and Website Performance services.

Contact Me

Or, get my newsletter, RSS feed or twitter.

"I would love to change the world, I just don't have the source code yet."

Recently