Wordpress is the most popular CMS today, the main reason for it's big success is the ease of use and the very big community that supports it.
However, one can quite frequently come up with a website based on Wordpress that even it isn't too big or filled with functions it remains slow to load. Something also affecting SEO, as a website's loading time is a SEO factor.
How to make your Wordpress site faster? You will find below some tips and suggestions for Wordpress optimization:
Server:
As we mentioned before, MySQL optimization is very important for websites no matter what CMS they are using. More about MySQL optimization
PHP should be set up so it doesn't waste RAM memory, especially more than a Wordpress page needs to load. (Basic rule of thumb is that the heaviest page of Wordpress is the admin panel)
Additionaly there are options, therefore differences, between implementations (CGI, FastCGI κλπ) while of course the new version of PHP 5.4 has to offer significant improvement in performance.
Also big part to PHP performance is acceleration (APC, eAccelerator, XCache) which save the executable file of PHP instead of reading and parsing php files in every page view request. Allong with PHP acceleration/caching there is the option of caching MySQL's resultswith a memcache server.
Finally, it is important to optimize as much as you can you web server (Apache, Nginx) in order to get the best of server resources in every request instead of wasting them due to a misconfiguration or a default that doesn't meet you requirements.
Offloading services:
Static files here, can be transferred to a different server if available.
Offloading the feed (quite expensive process for the server) to a service like FeedBurner, especially if you have many subscribers it is the best solution.
Also using a Content Delivery Network (CDN) for static files and especially for images, it is a necessary step for high traffic web sites on shared hosting.
Caching:
As we mentioned to the above article about static files, we have the option to offer cached results in application level (Wordpress), browser level and Web Server level.
Using a plugin for caching like W3 Total Cache (W3TC), takes over for you all of the above through a nice and explanatory menu.
Wordpress:
The highest complexity in optimization can be found in the same the application itself in our case Wordpress.
First of all we need to remove all unused plugins, they are not only taking space without a reason but they constitute a security risk even inactive.
Then we verify that our images are είναι optimized in size (Important: we serve our images in the size we are using them in a page, we don't serve for example: a 100x100px image and we resize it after with HTML attributes to 50x50)
One more thing is the total number of files usually css and javascript we use, ideally we should have only one .css and .js file and minified as well. At this point W3TC plugin and/or WP Minify can help.
Also for those need even more Wordpress optimization you can reduce and optimize queries. Many Wordpress themes Wordpress use complex and/or too many queries and can be replaced by simpler.
While variables can be hardcoded (be written to files as text instead of variables) in our themes. This means that you will have to edit after every change you make to your site, but in the case of variables that are here to stay, like Title or site description, it seems to be another good spot to optimize.