A powerful WordPress child theme generator based on the wpico theme, featuring SASS processing, JavaScript bundling, live reload capabilities, and automated setup.
- SASS/SCSS compilation with source maps
- JavaScript minification and bundling
- Live reload for PHP, CSS, and JavaScript changes
- Google Fonts integration
- Fluid typography and spacing
- Modular SASS architecture
- Automated theme setup and configuration
- WordPress page creation automation
- Development environment with Nix
- Node.js and npm
- WordPress installation with wpico theme
- Nix package manager (optional but recommended)
-
Clone this repository into your WordPress themes directory:
cd wp-content/themes/ git clone https://github.com/mwmdev/wpico-child.git
-
Run the setup script:
./setup.sh
The script will prompt for:
- Theme Name
- Theme Author
- Theme Description
- Author URI
- Theme URI
- Primary Font (Google Font)
- Secondary Font (Google Font)
- Primary Color (hex)
- Secondary Color (hex)
- Outer Width (pixels)
- Inner Width (pixels)
- Pages to create (comma-separated)
-
Start development:
./start.sh
theme-name/
├── assets/
│ ├── css/
│ │ └── style.min.css (generated)
│ ├── js/
│ │ ├── src/
│ │ │ └── scripts.js
│ │ └── scripts.min.js (generated)
│ └── sass/
│ ├── abstracts/
│ │ ├── _colors.scss
│ │ ├── _icons.scss
│ │ ├── _sizes.scss
│ │ └── _typography.scss
│ ├── components/
│ │ ├── _buttons.scss
│ │ ├── _list.scss
│ │ ├── _navigation.scss
│ │ └── _search.scss
│ ├── layout/
│ │ ├── _footer.scss
│ │ ├── _header.scss
│ │ └── _main.scss
│ └── style.scss
├── inc/
├── functions.php
├── style.css
├── gulpfile.js
├── package.json
├── shell.nix
├── setup.sh
├── start.sh
└── reset.sh
setup.sh
: Initial theme configurationstart.sh
: Starts WordPress server and development environmentreset.sh
: Resets theme to default valuesnpm start
: Starts Gulp tasks onlynpm run build
: Builds production assets
-
abstracts/: Variables, mixins, and utility functions
_colors.scss
: Color variables and palette_icons.scss
: SVG icons as data URLs_sizes.scss
: Spacing, breakpoints, and fluid typography_typography.scss
: Font settings and text utilities
-
components/: Reusable UI components
_buttons.scss
: Button styles_list.scss
: List and grid layouts_navigation.scss
: Navigation menus_search.scss
: Search form and results
-
layout/: Major layout sections
_footer.scss
: Footer styles_header.scss
: Header styles_main.scss
: Main content area styles
Using Nix provides a consistent development environment with:
- Node.js 20
- npm
- Gulp CLI
- PHP 8.2
- Composer
- WP-CLI
wp
: WordPress CLIgulp
: Task runnernpm
: Package managercomposer
: PHP package manager
- Colors: Edit
assets/sass/abstracts/_colors.scss
- Typography: Edit
assets/sass/abstracts/_typography.scss
- Layout: Edit
assets/sass/abstracts/_sizes.scss
- Components: Add new files in
assets/sass/components/
MIT License - see LICENSE file for details