Changelog December 2020

A complete overhaul of my website's backend

31.12.2020 - 14:19
I just finished and uploaded a massive update to my website. It mostly affects the backend but while I was at it I also gave the design a much-needed facelift. Here is a comprehensive list of the changes:


  • I implemented my own custom Content Management System (CMS).
  • There are three different types of pages: static pages, posts, and modules.
  • Static pages are for content that doesn't change very often like Home, About Me, or the Impressum.
  • Posts are -as you can imagine- for blog posts. They have a date, an author, thumbnail images, and tags.
  • Modules are for pages that require some functionality like the contact form or the page selections in the list of posts.
  • Static pages and posts can be created and edited in the admin panel.
  • Modules have to be placed in a folder and can then be installed from the admin panel.
  • All modules have customizable texts at the top and the bottom to dynamically insert additional information.
  • Modules can create additional admin tools in their install function and provide a dynamic extension to the admin panel for their own needs.
  • All pages can be toggled between public and private with a single button in the admin panel.
  • Navigation links can be created and edited in the admin panel.
  • The order of the navigation links can be changed in the admin panel.
  • Navigation links can be set to visible or hidden in the admin panel.
  • The spacing between navigation links can be controlled in the admin panel, for example, if a design requires line breaks instead of wide spaces.
  • Everything that can be created in the admin panel can also be deleted.


  • The website now follows basic SEO principles.
  • The URLs are SEO-friendly. Now longer ?s=blogpost&bpid=123, but human-readable keywords separated by hyphens instead. My Medium story about it: SEO-friendly URLs
  • The title of every page is now different.
  • Added a meta description tag to summarize the content of every page.
  • The URL, the title, and the SEO description can be edited in the admin panel.

CMS Options

  • The status of the website can be set to private with a single button when I need to perform critical maintenance or updates.
  • Magpie can be enabled in the admin panel. Magpie is my custom-built web analytics tool. Due to the way that pages are now handled Magpie also reports more details about the pages a user visited, which is a nice benefit. (All Magpie user data is anonymized at the earliest possible moment).
  • Google AdSense can be enabled and controlled from the admin panel.
  • Comments can be turned on or off globally or per post.
  • The social media links and bottom text can be edited in the admin panel.
  • Other miscellaneous options like setting the featured post or how many posts are listed per page.

Some options in the admin panel


  • Themes have been added to the CMS.
  • Themes can be switched dynamically in the admin panel.
  • Themes consist almost exclusively out of HTML and CSS and only require minimal PHP to insert the content at the correct position.

Mailing List

  • The mailing list has been updated and is now more of a mailing list for handwritten newsletters rather than an automatic new blog post notification.
  • The automatic thank you note when somebody subscribes to the newsletter can be customized in the admin panel.
  • Newsletters can be sent from the admin panel.
  • Every email will always include an unsubscribe link.

Open Graph and Twitter Cards

  • Added support for Open Graph and Twitter Cards meta tags.
  • They are automatically derived from the normal SEO and page parameters and control how a link to my website appears when shared on social media platforms.

Special Commands

  • Added special commands to insert dynamic content into pages.
  • An example command is ###featured_post### and it will insert a preview of the currently featured post when the page is loaded as you can see at the top of the Home page.
  • There are more commands to reference posts individually, list recent posts, insert a mailing list subscription form, or insert a Google Ad.


  • To test the themes I created a new design with brighter colors and a more modern look, but I will probably keep tweaking it until I am happy.
  • I made a flat icon in Blender from my old hunched over penguin logo that I was using before, which is fine for now but will probably need more work in the future.

I probably forgot to include some minor changes, but I believe all important changes are covered in this list.

by Christian - 31.12.2020 - 14:19


by dwUQQUrL - 31.08.2022 - 00:32
Social Media:  © 2020 All rights reservedCookiesImpressum generated in 8 ms