seothemes/genesis-starter-theme
Composer 安装命令:
composer require seothemes/genesis-starter-theme
包简介
Genesis starter theme with a modern development workflow.
README 文档
README
A developer-friendly starter theme used for creating commercial child themes for the Genesis Framework.
It uses Laravel Mix as a build tool to automate mundane development tasks like compiling SCSS and minifying images.
Check out the live demo
Table of Contents
Features
The Genesis Starter Theme aims to modernize, organize and enhance some aspects of Genesis child theme development. Take a look at what is waiting for you:
- Bourbon as a lightweight Sass toolkit
- Laravel Mix for automating development build tasks
- Browsersync for synchronized browser testing
- Config-based, OOP modular architecture
- CLI setup script to automatically update information
- Yarn or NPM for managing Node dependencies
- Composer for managing PHP dependencies and autoloading
- Namespaced to avoid naming conflicts
- AMP support with the WordPress AMP plugin
- Gutenberg support for latest blocks and admin editor styles
Requirements
| Requirement | How to Check | How to Install |
|---|---|---|
| PHP >= 5.4 | php -v |
php.net |
| WordPress >= 5.2 | Admin Footer |
wordpress.org |
| Genesis >= 3.1.1 | Theme Page |
studiopress.com |
| Composer >= 1.5.0 | composer --version |
getcomposer.org |
| Node >= 9.10.1 | node -v |
nodejs.org |
| NPM >= 5.6.0 | npm -v |
npm.js |
| Yarn >= 0.2.x | yarn -v |
yarnpkg.com |
Installation
One line command:
Install the latest development version of the Genesis Starter Theme using Composer from your WordPress themes directory (replace your-theme-name below with the name of your theme):
composer create-project seothemes/genesis-starter-theme your-theme-name dev-master && cd "$(\ls -1dt ./*/ | head -n 1)" && npm install && npm run build
Individual commands:
Install the latest development version of the Genesis Starter Theme using Composer from your WordPress themes directory (replace your-theme-name below with the name of your theme):
composer create-project seothemes/genesis-starter-theme your-theme-name dev-master
Navigate into the theme's root directory:
cd your-theme-name
Install node dependencies, build the theme assets and kick-off BrowserSync:
npm install && npm run build
Structure
your-theme-name/ # → Root directory ├── assets/ # → Front-end assets ├── config/ # → Config directory ├── lib/ # → Theme functions │ ├── functions/ # → General functions │ ├── plugins/ # → Plugin functions │ ├── shortcodes/ # → Shortcode functions │ ├── structure/ # → Structural functions │ └── init.php # → File autoloader ├── templates/ # → Page templates ├── tests/ # → PHP Unit tests ├── vendor/ # → Composer packages ├── node_modules/ # → Node.js packages ├── composer.json # → Composer settings ├── package.json # → Node dependencies ├── webpack.mix.js # → Laravel mix config ├── screenshot.png # → Theme screenshot ├── functions.php # → Loads init files └── style.css # → Blank stylesheet
Usage
Project details such as theme name, author, version number etc should only ever be changed from the package.json file. Laravel Mix reads this file and automatically places the relevant information to the correct locations throughout the theme.
Static assets are organized in the assets directory. This folder contains theme scripts, styles, images, fonts, views and language translation files. All of the main theme styles are contained in the assets/css/main.css file, the style.css file at the root of the theme is left blank intentionally and only contains the required stylesheet header comment.
Autoloading classes and files
Classes
The Genesis Starter Theme automatically loads classes placed in the lib/classes/ directory via the Composer autoloader. Once you have added your additional files, run the following command to regenerate the autoloader:
composer dump-autoload --no-dev
Files
File loading is handled by the lib/init.php file. Simply add or remove files from the directory/filename array.
Development
Please refer to the Laravel Mix documentation for further information on how to use the webpack.mix.js file.
All build tasks are located in the theme's package.json file, under the scripts section.
Contributing
Contributions are welcome from everyone. We have contributing guidelines to help you get started.
See also the list of contributors who participated in this project.
Special Thanks
A shout out to anyone who's code was used in or provided inspiration to this project:
Christoph Herr, Gary Jones, Tonya Mork, Tim Jensen, Justin Tadlock
seothemes/genesis-starter-theme 适用场景与选型建议
seothemes/genesis-starter-theme 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 1.07k 次下载、GitHub Stars 达 144, 最近一次更新时间为 2018 年 06 月 06 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「wordpress」 「wordpress-theme-development」 「genesis-framework」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 seothemes/genesis-starter-theme 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 seothemes/genesis-starter-theme 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 seothemes/genesis-starter-theme 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Provides Function To Check if a plugin is active/inactive & function to compare versions.
Core functionality plugin for SEO Themes Genesis child themes.
Simple WP Post Class With Advanced Options.
Must-use plugin integrating WordPress with the Upsun platform: environment awareness, router-cache friendliness, safe preview clones, deploy migrations, Site Health checks, and a wp upsun CLI command.
Adds customizer support to your Genesis child theme.
Genesis starter theme with a modern development workflow.
统计信息
- 总下载量: 1.07k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 145
- 点击次数: 16
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: GPL-2.0-or-later
- 更新时间: 2018-06-06