Theme development・Setup: what to build and the tools

Let's build a theme for a company site

In this course, we develop a WordPress theme from scratch, using the fictional sundries shop "Shimaenagado" and its company site as our subject. Let's start by looking at the finished picture and the road that gets us there.

In the WordPress intro course, we learned up to “picking and wearing” a ready-made theme. This course goes further — stepping into the world of building your own theme. Our subject is the company site of a fictional sundries shop, “Shimaenagado.” We’ll build a layout that’s a staple of real-world web production, all the way through, along a single path.

WordPressWhat is WordPress?If WordPress itself is new to you, please start from the very beginning of the intro course (WordPress edition) first

What changes when you can build your own theme?

“Isn’t a ready-made theme enough?” — that’s a fair question, so let’s answer it first.

  • You gain design freedom — a ready-made theme lets you customize “within a prepared range.” When you build your own, any design you can write in HTML and CSS can be put onto WordPress
  • You become able to read the insides of existing themes — once you’ve built the structure yourself, you can see “where to fix” in someone else’s theme too. This is exactly the skill that pays off in real-world customization jobs
  • It connects directly to real-world web production — “building a company site with an original design in WordPress” is a classic web-production job in itself

In other words, this course is a step up from “someone who can use WordPress” to “someone who can build with WordPress.”

The finished picture

Once you make it to the end of the course, a corporate site like this will run on your own theme.

The top page of Shimaenagado. A navigation bar in the header, the catchphrase “A soft little something, every day.” in the center, and a list of announcements and product cards lined up
The finished top page. We’ll build this by stacking up template files.

The page structure is the very “template” of a company site.

PageContentHow it’s built (file in charge)
TopHero + announcements + productsfront-page.php
AboutStatic pagepage.php
Announcement listPost list, category filteringhome.php / category.php
Announcement detailThe body of a postsingle.php
Product list & detailCustom post typearchive-•••.php / single-•••.php

The right-hand column of this table is the “template files.” They may look like magic spells right now, but don’t worry — through the course, we’ll write each one by hand.

Reading the map: pages have two personalities

Look closely at the table above and you’ll see pages split into roughly two kinds. It’s that distinction you learned in the intro course.

  • Pages that keep piling up, dated — announcements. Every time you write one, one more appears, and they line up newest-first in the list. In WordPress these are handled by posts
  • Pages that are just always there — the About page. It doesn’t pile up, and the date isn’t its essence. It’s handled by static pages

And products are a “third kind” that’s neither of these two — you’ll define them yourself as a custom post type in the second half of the course. The question “which personality does this page have?” becomes the yardstick that decides which template file you build next.

The learning journey (4 chapters)

  1. Getting ready — build a development environment with Local, launch a minimal theme, and learn the bare minimum of PHP for themes
  2. Templates — learn the “template hierarchy,” the rule for how URLs map to files in charge, and build the top, static pages, lists, and details
  3. functions.php — the correct way to load CSS, menus editable from the admin screen, and implementing “products” with custom post types and custom fields
  4. Finishing — polish it into a proper theme and complete it

What to bring before we start

  • HTML and CSS — writing tags and selectors is enough (HTML course / CSS course completion level)
  • Basic WordPress operations — you understand what posts, static pages, and themes mean (the content of the intro course)
  • Knowledge of PHPnot needed. You’ll learn just the minimum a theme requires, within this course

Summary of this lesson

  1. The deliverable of this course is the Shimaenagado company-site theme — a real-world layout with announcements, an About page, and products
  2. The journey is 4 chapters: getting ready → templates → functions.php → finishing. We write each template file by hand
  3. No prior PHP knowledge is required — it’s built so that if you can do HTML/CSS, you can get in

Try it: get the finished site clear in your head

This time it’s just checking the map before we set off. Take a good look at the finished picture above once more, and say the following two things in your own words.

  1. How many kinds of pages does this site have? (Top, About, list, detail, products…)
  2. Of those, which ones “pile up, dated”? Which ones “never change”?

This distinction (posts vs. static pages) becomes the map for building templates differently. In the next lesson, let’s set up the development environment.

FAQ

Can I build my own WordPress theme without knowing PHP?
Yes. The PHP used in theme development is only a small slice, and in this course we learn just the minimum right before you need it. Being able to write HTML and CSS matters far more.
Classic theme or block theme — which should a beginner learn first?
This course starts with classic themes. Your HTML/CSS knowledge carries over directly, and the match between files and what shows on screen is easy to see, so it's well suited to understanding how things work. We'll point you toward block themes in the final lesson.
What's the difference between building your own theme and customizing an existing one?
The knowledge you use is the same. Once you've built one from scratch, you can read which file and what part of an existing theme to fix — so learning to build your own theme is also a shortcut to customization.