If you have browsed our website before, you would have noticed that the website has been refreshed. Behind the scenes, not only has it been refreshed but we removed the content management system. That’s right, this website does not have a content management system and is all but static html files.

The upgrade has been part of an exciting season of moving our hosting from a dedicated server with HD Net to Amazon Web Services. Along the way I have optimised many of my client’s websites for speed, implemented SSL, removed or replaced old plugins etc.

Static HTML websites do not have plugins that need to be maintained, and with the help of tools like SASS, it is easier to make the website fast. I am apt in HTML and CSS, so not using a CMS is not a hindrance to me. I can edit my files from GoogleDrive and then run a command on my desktop to build the static website from

Jeremy from Burnbright Website Development recommended to look at Jekyll for simple websites that I personally manage. Jekyll is a framework that enables you to use liquid for templating your website - similar to how Wordpress has <?php the_content() ?>, I can use {{ content }}. The templated version can be run on Localhost, and once you run “bundle exec jekyll build” into a bash command line, static files are generated that can be transfered onto a live server.

Changing an already static website into a Jekyll-generated website is straight forward. I learnt to convert a static site to Jekyll in twenty minutes with a guide.

Transferring the content and getting the SEO right was tricky. We have ~180 blog posts that were using BBcode formatting and needed to be changed to markdown. I did a find and replace on some BBcode tags. Other tags were not individually selected because they were too similar to other tags. I ended up individually editing each post to remove broken links and fix formatting. There are still improvements to be made and hopefully the blog posts that are still relevant are of help to more people in the future. The new webdesign has a different URL structure so I refreshed my memory on Regex to create 301 redirects for most blog posts. The .xml to Jekyll importer I used, created a filename from the post title rather than an existing permalink, which made things difficult.

Jekyll does have plugins that you can use to help generate the website. Tools such as pagination, SEO meta tags, sitemap.xml generation, email obfuscation etc. The jekyll-pagination plugin was strange because it did not have the rel=”next” and rel=”prev” tags needed for pagination out of the box. A separate SEO plugin was needed for adding that. Why not have it in the same plugin? It makes me wonder how many Jekyll sites are out their with that technical SEO issue in their pagination. I gave up on using the SEO plugins I found because they set the opening paragraph meta descriptions for posts/pages that did not have a specified meta description. The meta description would also include any HTML from the opening content, a bad look. I will not be writing meta descriptions for the ~180 blog posts and I would rather that Google set its own meta descriptions. Instead, I have manually done the SEO tags. My meta tags look like this:

<title>{{ page.title }} | SearchMasters</title>
{% if page.description != null %}<meta name="description" content="{{ page.description }}">{% endif %}
<link rel="canonical" href="{{ page.url | prepend: site.url }}">

If there is a description, use it. Other do not add a meta description tag so that google willl definitely write one for us. The canonical is necessary on each page because the pages such as /about/ have a /about/index.html file that can be accessed. I plan to 301 redirect the index.html to the parent directory.

Now that the website is up with the look and feel I want, now it is time to iterate on the content. A lot of work is needed to improve the quality of the homepage and SEO services landing pages. I removed several pages from the old website such as /reputation-management. Over time I will replace these and create a landing page for each sub service I provide within an SEO campaign.

  • Link Building
  • Google My Business setup and local citations
  • On-page optimisation. Technical SEO and targeting search phrases with webpage content
  • Website development

There is also room for the likes of location specific phrases like SEO-Palmerston-North. We were ranked No.1 with the SEO Palmerston North page and it would be excellent to keep our position there.