How To Build A Blog

I'm basing this article on the build of WordPress sites that I'm currently working on. The sites I build tend to be blogs or small business websites. A question that is often asked is, is there a difference between a blog and a website?

I'll document each step I take to build the sites in brief, here. I'll also point out anything relevant that I think may help my readers that any of the my site builds turn up.

Steps To Building A WordPress Blog (Or Website)

Think Up Domain Name

This is an important step in your WordPress website or blog build. You'll need to find a domain name that is available. This will either be because the domain name is not owned by anyone currently, or it is owned by someone, but they want to sell it.

Try to think of a domain name that sums up what your site is about - or sounds as if it might.

Buy Domain Name

Having thought of a domain name you must check it's available and then buy it. I buy my domain names from Namecheap.

Buy Hosting

I've used a number of different hosts in the past, and they've all been good, but at some point something went wrong, and made me want to change to another host. Some of my previous hosts have been BlueHost, SiteGround, LiquidWeb, WPX Hosting, FlyWheel and WP Engine.

Out of all of those, the one I liked the best was WP Engine. If you're interested in WP Engine here is a discounted link for hosting with them. They are excellent if you want a mostly hands off approach to hosting with excellent support.

Set Up DNS Management

Once you have a domain name and hosting next you need DNS (Domain Name Services) Management. DNS Management allows you to control the relationship between your domain name and the server it is hosted on.

It's a really good idea to have this handled by a separate party so I always use Cloudflare. Cloudflare is great because it does a lot more than merely manage your DNS - it will also act as a form of CDN.

Cloudflare will also help your site go faster, and help protect it from hackers. You'll still need good hosting to serve your content quickly, and to protect your site, but you get a lot for free from Cloudflare.

Please note that although I use Cloudflare as a CDN, I use a different CDN for my images. But I'll talk about that in another blog post.

Set Up A CDN

CloudFlare

Cloudflare as already mentioned will act as a CDN for your site's static content. But it is more than an ordinary CDN. It also prevent malicious traffic from reaching your site at all by analysing potential threats based on a number of characteristics of the traffic.

Cloudflare also masks the site's IP address so attackers cannot directly attack a server. This is assuming you have set the DNS record to orange clouded.

Amazon S3/CloudFront

At first glance, Cloudflare is the CDN in my configuration. Normally this would mean images used on the site would be stored in the WordPress media library. They would then, as part of the caching functionality be automatically included in a CDN distribution on Cloudflare. But I don't like using the WordPress media library. I find it unattractive for the following reasons

  • Unless you use a plugin to organise it, the WordPress media library descends into chaos
  • I don't want to add a plugin to fix a problem that shouldn't be there
  • The media library generates multiple copies and sizes of images, many of which are not necessary.
  • Moving a site is much harder when the images have to move too. Keeping them on a separate CDN with different URLs maintains their independence from the site.

The best media library for me, is an empty one. To that end I keep all my images on Amazon S3. To make sure they are delivered via a CDN, I also use Amazon Cloudfront. I am doing this manually at present - but hope to create a system to do process images automatically. This would simplify my current workflow and improve the result.

The disadvantages to my current solution are that I have no srcset solution. Also many plugins rely on the media library and if you don't use it, you can't use those plugins.

However using Oxygen and Advanced Custom Fields I find I don't need plugins to create sliders and galleries. The srcset problem remains, but is something we will program our way around in the near future. So in summary this is how my CDN setup looks:

  • Cloudflare for site page content, JavaScript and CSS files, and then,
  • Amazon S3 with Cloudfront for images.

More To Follow ...

I'll update this post as I do each step on the sites I'm building


Filed Under : How To Build A Blog

Leave a Reply

Your email address will not be published. Required fields are marked *

linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram