I have been running my wordpress site for about 7 years but I don't consider myself technically proficient. My focus has been on creating content. What I am trying to say is that some of these questions may seem basic or even stupid and for that I apologize.
Recently, the site has slowed down and had lots of 404 and 500 errors. I had made no changes to the site or its configuration. I didn't contact support because I know that sometimes these things happen and they usually get better by themselves - and they have. The server response time was pretty slow, so perhaps another website on the same server was getting hammered or something.
Last November, I got hacked and that made me realize I needed to spend more time on the webmaster aspect. I have hardened my installation and am happy with the results. But now, this recent slow down made me realize that I need to address the site's speed and optimization.
With that in mind I have some questions.
I need to reduce the number of CSS and JS files on the site. In theory that's fine but my posts in some categories require different files. I can add all the CSS into one file but that means there would be a chunk that is only needed some time or I could use some sort of PHP IF statement. But which is faster? This I suppose depends on the extra size of the CSS. I don't have the means to test both versions, so is there a guide somewhere? For example, if the extra CSS was 5K then it's better to include it in the style.css but if it is bigger then the PHP IF solution is faster. Of course, I'll be minifying and Gzipping everything.
If I decide to go down the CDN route, how will I get WordPress to know that all my media is on "media.example.NET"? I don't mean within the posts, which link to media, but for featured iamges and uploads etc? I will do a search and replace on the DB for the old and new paths.
I'm worried that my wp_options table has become full of crap after testing so many plugins and themes. I am aware and have used the Clean Options plugin and it worked quite well, but what are your thoughts on me just importing a fresh wp_options table with default settings at "starting again"? I know I'll need to add the plugins again and adjust the settings but it would give me peace of mind that everything is clean.
I have removed as many plugins as possible and will have them re-written to call media from the new static server.
I am having a new theme created for me and this will allow me to add all my custom code slowly and carefully to amke sure it's needed. After that I'll pay a WP expert to do a code review to check I am doing stuff the most efficient way.
Is there anything else I should be considering to make sure the site is as fast as possible?