Change to this blog
2026-05-17
I changed how I manage this site
I knew when I started learning all of this that I would want to document my learning. The intention is not to have anyone actually read or follow this. It’s a record of my own learning for myself. In addition to this, if I ever wanted to send a link to someone to see how I handled something or whatever - I have it documented and easy to send.
I’ve been working in the WordPress industry for about seven years now. So, when I wanted to manage a blog of sorts, WordPress was the first thing I went to use.
Since the blog wasn’t intended for others, I didn’t need anything fancy. So, I used a default WordPress theme and used the classic editor. However, the more I used it, the more I figured I didn’t need WordPress as much as I wanted something far more simple and to learn more in the Linux realm.
The requirements
I figured that since this blog was a record of my progress that the manner in which I managed it should be a part of that.
I knew I wanted something boring and stable. I didn’t want anything flashy or overbuilt. I didn’t want any CMS and wanted to work in terminal as much as possible. I also knew I wanted to write in markdown and not use my regular WHM/cPanel arrangments.
I discussed all this with ChatGPT and together we developed the plan for the system I am currently using for this blog.
The system
The process for post creation is simple:
Locally, I cd into my /posts directory and run
ls to get the existing files printed so I can following the
file naming format when I create my new post. Currently, my system
requires the file name to contain the date before the title of the post.
So, something like 2026-05-17-this-is-my-post.md.
Each post had a header section containing information that gets used to display the posts. Like this:
---
title: "School of Bash"
date: "2026-02-22"
slug: "school-of-bash"
categories:
- Uncategorized
---The order of posts currently relies on the date in the file name. However, I am going to change it so it uses the date within this post header since I realize writing out the date in the file name is a pain. This is where moving fast with ChatGPT doesn’t work out so well. ha. But, it’s easy to fix.
Posts live in /posts, but I have a directory named /public that is what is actually used to push to the server.
When I am ready to push to my server, I run a script that first
deletes everything in /public. Then, it takes my markdown files and
using pandoc it convert my markdown to html. It then copies
the posts in /posts to /public. It also copies over any assets from my
/static directory. Then, everything is pushed to overwrite my /public
folder on my server via rsync with a deploy script I then
run.
The site is updated instantly. Nothing else to do.
There are more details, but that is the general rundown.
Overall, I am pretty happy with the outcome.