Skip to content

WordPress starter theme with a modern development stack for launching projects faster and easily

License

Notifications You must be signed in to change notification settings

solidbunch/starter-kit-theme

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

744 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Starter Kit theme

GitHub GitHub release (latest by date)

WordPress starter theme with a modern development stack for launching projects faster and easily.

Requirements

How to use

Installation

  1. Create a new theme directory in wp-content/themes:
mkdir you-theme-dir && cd you-theme-dir
  1. Clone Starter Kit Theme:
git clone --depth=1 git@github.com:solidbunch/starter-kit-theme.git . && rm -rf .git
  1. Setup php dependencies:
composer install
  1. Setup node dependencies:
npm install

Build commands

  • Build minified assets for production:
npm run prod
  • Build assets with source maps for development:
npm run dev
  • Start watcher with browser sync for development:
npm run watch

Structure

── config/                      # Base theme configuration
── src/                         # Main theme functionality files
   ├── Base/                    # Base theme functions
   │   └──Hooks.php             # Registering hooks
   │
   ├── Error/                   # Theme additional error handlers, may be enable in config
   ├── Exception/               # Theme additional exceptions
   │
   ├── Handlers/                # Theme hook handlers, main functionality
   │   ├──Blocks/               # Blocks functionality
   │   ├──CLI/                  # WP CLI comands
   │   ├──Meta/                 # Registering meta fields for post types, taxonomis, users etc. Runs by Base/Hooks
   │   ├──PostTypes/            # Registering custom post types with Taxonomies. Runs by Base/Hooks
   │   ├──Settings/             # Theme settings creation.
   │   │  └──ThemeSettings.php  # Main theme settings. Look in wp-admin Theme Settings
   │   ├──Optimization /        # Removes unnecessary things, performance optimization
   │   ├──Security /            # Provides some security options. Disable xmlrpc, etc
   │   ├──Back.php              # wp-admin functions
   │   ├──Front.php             # Basic Front handlers
   │   └──SetupTheme.php        # Setup theme handlers
   │
   ├── Helper/                  # Helpers classes
   │   ├──Assets.php            # Helper to work with assets processed by webpack
   │   ├──Config.php            # Helper functions for theme configuration
   │   ├──Logger.php            # Logging helper
   │   └──Utils.php             # Other useful functions
   │
   ├── Repository/              # Repositories, help to receive data from DB
   │                            # Classes by each post type
   │
   ├── AbstractSingleton.php    # Abstract Class for creating Singleton Classes
   ├── App.php                  # Application Singleton. Entrypoint
   └── dev.php                  # Some developers functions for debug, logging, etc

── assets/                      # Theme assets
   ├── build/                   # The compiled assets
   ├── fonts/
   ├── images/
   └── src /                    # Assets source files
       ├── js/
       └── styles/

── parts/                       # Custom template parts for the theme. Include things like headers, footers, and sidebars.
── patterns/                    # Reusable patterns.
── templates/                   # Templates, represent the overall document structure of the front-end.
                                  Templates, parts, patterns are made up of block markup.
                                  WordPress will automatically register files included in this folder.

── functions.php
── package.json
── composer.json
── screenshot.png
── style.css
── webpack.mix.js
── .editorconfig
── .gitignore

Blocks

Overview

Gutenberg Blocks in the blocks/ folder are loaded with the autoloader. That is, you can simply create a folder of a new block with the necessary files and this blocks will be automatically available.

Use StarterBlock as an example to create new blocks.

About

WordPress starter theme with a modern development stack for launching projects faster and easily

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 13