Live Taping Today at 8:30am US Central
This is a draft of an episode that will be taped live this morning at https://twitch.tv/joehills
This isn’t the final text of this post, which will become available after the edited version of the video is live.
Introduction
Howdy, y’all! Joe Hills here, recording as I always do in Nashville, Tennessee, and in today’s lesson we’re going to learn about the trade-offs of going from a simple web site to a full content management system, like WordPress.
The first few lessons in this series have been giving a sweepingly broad overview of the bare minimum of concepts required to self-publish something on the web in an effort to create what’s called an MVP or Minimum Viable Product at each step of the way.
What problem do content management systems address?
If you only need a handful of pages that you’re fine hand-coding changes into a few times a year, then the simple web site you self-published in Lesson Three is a minimum viable product that you can you can keep improving and updating at your own pace, but I recommend you at least hear me about about the “pros” and “coms” of content management systems, which are the minimum viable product for folks that need to update their websites frequently with new blog posts, new pages, and lots of photos and videos.
You can even spread that labor out more easily with multiple collaborators. Friends! Family! Employees!
You may not need to make that jump yet, but it’s nice to know where that next landing is in just case you need it later.
What complexities do content management systems introduce?
We’ve mentioned a few pros of content management systems so far, but there are trade-offs to be aware of. We’ll call those complexities or “coms” for short.
The first “com” is back-end complexity. You’d be jumping from a website that runs solely on HTML and CSS files stored in a filesystem to a piece of web software written in a scripting language like php and storing your website’s information in a database like MariaDB. A lot of web hosts, like our sponsor NameHero, offer streamlined WordPress installs that will help you avoid needing to get your hands too dirty with the internals of your CMS while you install it.
The CMS itself should also provide most site creators with plenty of ways to customize your site and configure the look and feel without ever delving into scripting or the database, but that does have its limits. If you want to do something custom with your site that isn’t really on the rails for your CMS, you may need to dig a bit deeper and learn a bit more to make it happen. But, hey, that’s an opportunity to have some fun for folks like me, and it might be for you as well!
The second “com” is community! Most content management systems have communities online and some extend into the real world as well with meet-ups and conferences you can attend to meet other folks who enjoy self-publishing online. Now, with community, there’s always the complexity of community leadership drama, which can lead to folks in the software ecosystem, and in extreme the case of WordPress led to me being included in page 24 of this preliminary injunction against Automattic, but even after all that, I’m still running joehills.net on WordPress, and I still recommend it to folks as the best option out there for most people.
The third “com” is co-management. If more than one person in your family or business can post or edit your site, you’ll need to communicate and set clear expectations for what is and isn’t appropriate to post there. This is a great opportunity to collaborate in a new way, and can also be a great learning experience, but make sure you set aside time for an onboarding conversation with anyone you’re giving an account and credentials to.
Let’s look at WordPress
For the purposes of this lesson, we’ll be using WordPress to showcase the basic functionality of a content management system. Different CMSs have different features, and even WordPress can change a lot over time, so make sure to check out the documentation and tutorials provided by your chosen CMS’s community.
Why choose WordPress for this example?
It’s easiest.
I worked for about five years developing custom content-management systems around clients’ specific business needs. As the market changed, demand shifted to adapting and extending existing content-management systems to specific business needs, and WordPress was the biggest draw there, so I spent many years writing client-specific code in the WordPress ecosystem.
I’m not recommending WordPress to folks solely based on personal familiarity. I’ve also put a lot of energy into researching WordPress alternatives for those clients, and have worked with Drupal and custom Laravel-based CMSs in the past. Rabbit-hole warning: there’s a ton of CMSs out there, and some of them may be better to your specific needs than WordPress, but for most people, including myself who can write a CMS from scratch, WordPress is the best starting point given its massive network of community members writing tutorials and running local conferences, its ubiquity with most web hosting services, and its relative ease-of-use.
Installing WordPress
I’ve personally manually installed WordPress over fifty times, and it’s very doable if you’re familiar with setting up your own database backend, but for new users, it’s advisable to use your web hosts automated WordPress installer, there’s quite a few of these linked in the WordPress documentation, including APS(Plesk), Fantastico, Installatron, and Softaculus. NameHero offers a Softaculus installer, so that’s what you see here.
TO-DO add installer screenshot
<https://wordpress.org/documentation/article/use-automated-installation/>
Most folks will want to install WordPress in the root directory of their site, but if you are just messing around, you can put it in a directory or subdomain named something like “test.”
Make sure you set the e-mail to an e-mail address you actually check, and to write down the username and password somewhere secure, like a password manager.
Feature overview
You can log into your WordPress admin by appending /wp-admin/ to the end of your WordPress install url, and start following along as we delve into the features we mentioned at the beginning of this lesson.
Posts and pages
On the WordPress admin sidebar, you’ll see links to “posts” and “pages.”
Let’s take a moment to break down the difference. Pages are for information that doesn’t change too often and needs a streamlined url. For example, you might have an “about” page at example.com/about/ or an faq page at example.com/faq.
Posts, are for pieces of writing that might be anywhere between tweets or full blog posts. If your whole site is about reviewing vinyl albums, each review might be a post. If you’re writing a journal site, each post might be a journal entry.
You can create new posts and pages from that sidebar, and the interface is going to be pretty similar to Tumblr, linkedin, or anything like that. You can preview your posts, schedule the publish date, or just publish them immediately.
Media
From the post or page editor, you can upload media like photos and videos, set their captions and add alt text. If you’ve uploaded a photo to BlueSky, you know how this works. You can consult the WordPress documentation if you want to really get into the weeds on this, but you can get started and just mess around right away.
TODO add screenshot of media upload.
User management
Let’s say you have a co-worker, family member, or trusted friend you’d like to collaborate with. All you need is their e-mail and you can send them an invite that will go straight to their spam folders, so make sure they check those. You can control whether they can modify all posts and pages on the site, or just their own writing, and you’ll wanna decide that on a case-by-case basis.
Site customization
One of the whole points of trying to make your own website is to build it in a way that reflects the image you want to project to the rest of the world. WordPress’s built-in customization options will let you adjust colors, fonts and more.
Rabbit Hole Warning: WHO ARE YOU?! WHAT COLOR IS YOUR WEBSITE?!
A personal website is going to have a much different look and feel than a restaurant or other business site, but no matter what your site is about, you’ll want to experiment with different colors, shapes, typefaces, and so on. Some folks spend years studying the elements of design, so it’s okay to start wherever you’re at and try not to get frustrated while you iterate.
The WordPress.org theme directory is a great place to start trying to narrow down what you’d like for your site. https://wordpress.org/themes/ You can edit and adjust most themes to some degree or another, and the best time to do that is before your sitestarts getting regular visitors, who might be confused by too many wild visual shifts.
But seriously, you can spend months trying to get this perfect, for your minimum viable product noodle around with this until you have something that feels about right and start sharing your writing and artwork with the world.
This series is ostensibly about coding, and if you want to extend WordPress, believe me, there’s plenty of coding to be done. Delving into that would be the work of many additional episodes, though, so it’s out of scope for this lesson.
Outroduction
The first four episodes of this series have provided an introduction to the technologies used to power basic websites used by individuals, artists collectives, and businesses all over the world. They’re everywhere today partly because they were easier to use than the alternatives that have arisen throughout the years.
You can make a web page. You can publish that web page. You can make a website. You can use a content management system to launch a blog or a gallery site for your illustrations or photos.
These four episodes were all brought to your by our hosting sponsor, NameHero. If you need hosting or a domain name, please consider making your purchase using my affiliate link at:
https://namehero.com/joe
Until next time, y’all! This is Joe Hills from Nashville, Tennessee. Keep adventuring!
