Art 114: Interactive Media and Design

Spring 2026 | Harrisburg Area Community College

Instructor: Rich Hauck, MPS

Custom Theming

Custom themes are a way to have full control over your site design. WordPress publishes thorough documentation on custom theme development on their Codex and in their theme handbook.

Theme Types

Type Features Examples Best for...
Classic
  • Traditional PHP-based themes that rely on the WordPress Customizer, widgets, and theme options for customization.
  • Uses PHP template files (e.g., header.php, footer.php, index.php) to render different parts of a website.
  • Support shortcodes, widgets, and meta boxes for additional functionality.
  • Use the Customizer for settings rather than full-site editing.
  • Examples: Astra, GeneratePress, OceanWP.
Users who prefer traditional WordPress themes and developers who are comfortable with PHP-based template editing.
Block
  • Built entirely with blocks, using the WordPress Site Editor for designing all parts of the website, including headers, footers, and templates.
  • Use HTML template parts (header.html, footer.html) instead of PHP template files.
  • No reliance on the Customizer, widgets, or theme options—everything is controlled via the block editor (Gutenberg).
    • Utilize theme.json for global styles (colors, fonts, layout).
Users who want to make a theme without needing to edit code.
Hybrid
  • A mix of Classic and Block themes, allowing partial Full Site Editing features while retaining PHP-based templating.
  • Support both customizer-based settings and block-based features like theme.json for global styles.
  • Allow developers to transition gradually from classic themes to block themes.
Users who want the flexibility of classic themes but also want to incorporate new block-based customization options.
Headless
  • This uses the WordPress admin panel for managing content, but the frontend is rendered completely separate
  • Uses WordPress's REST API.
Performance, security, and developers who don't want to use older technologies like PHP.

For this class, we'll be looking at hybrid themes.