locomotivemtl / wordpress-boilerplate
一个现代WordPress项目样板。
Requires
- php: >=7.4
- composer/installers: ^1.0 || ^2.0
- cweagans/composer-patches: ^1.7
- junaidbhura/advanced-custom-fields-pro: *
- junaidbhura/composer-wp-pro-plugins: ^1.4
- locomotivemtl/wp-lib-cms: ^1.0@dev
- locomotivemtl/wp-lib-theme: ^1.0@dev
- oscarotero/env: ^2.1
- roots/bedrock-autoloader: ^1.0
- roots/bedrock-disallow-indexing: ^2.0
- roots/wordpress: ^6.3.0
- roots/wp-config: ^1.0.0
- roots/wp-password-bcrypt: ^1.1.0
- twig/html-extra: ^3.4
- vlucas/phpdotenv: ^5.5
- wikimedia/composer-merge-plugin: ^2.0
- wpackagist-plugin/aryo-activity-log: ^2.8
- wpackagist-plugin/classic-editor: ^1.6
- wpackagist-plugin/redirection: ^5.3
Requires (Dev)
- roave/security-advisories: dev-latest
- wp-jazz/coding-standards: ^1
This package is auto-updated.
Last update: 2024-09-23 15:53:37 UTC
README
一个快速且具有个人观点的WordPress样板,使用Composer,简化配置,并改进了目录结构。
此样板基于 wp-jazz/wp-project-skeleton,它源自 Bedrock。
如果您有条件,请考虑 赞助Roots。
概述
此样板假设您熟悉 wp-jazz/wp-project-skeleton 和 Bedrock。
与 wp-jazz/wp-project-skeleton 的区别
- Web根目录 是
www
而不是public
。 - 包含
wp-ajax.php
的副本,它是WordPress的admin-ajax.php
的近似副本。 - 准备与以下软件集成
- Activity Log — 监控和记录所有更改和活动的插件。
- Advanced Custom Fields Pro — 允许添加额外内容字段的插件。
- Ecocide — 用于禁用WordPress基本功能的库。
- Gravity Forms — 允许构建自定义表单的插件。
- Polylang Pro — 支持多语言内容的插件。
- 包含WordPress数据库的副本
- 单语(英语)
- 多语(英语和法语)
要求
- PHP >= 7.4
- Composer (安装)
- Advanced Custom Fields Pro、Gravity Forms和Polylang Pro的有效许可证。
安装
-
创建新项目
composer create-project locomotivemtl/wordpress-boilerplate
请注意,由于需要定义许可证密钥的付费WordPress插件,Composer依赖项的安装将失败。
或者,克隆仓库
git clone https://github.com/locomotivemtl/wordpress-boilerplate.git . rm -rf .git git init git add -A git commit -m "Initial commit"
或将仓库添加为远程仓库
git remote add boilerplate https://github.com/locomotivemtl/wordpress-boilerplate.git git fetch boilerplate main git merge boilerplate/main
-
更新
.env
文件中的环境变量。将可能包含非字母数字字符的值用引号括起来,否则它们可能会被错误解析。
- 数据库变量
DB_NAME
— 数据库名DB_USER
— 数据库用户DB_PASSWORD
— 数据库密码DB_HOST
— 数据库主机- 可选地,您可以为使用DSN而不是使用上面的变量定义
DATABASE_URL
(例如,mysql://user:password@127.0.0.1:3306/db_name
)
WP_DEVELOPMENT_MODE
— 设置开发模式(开发时为all
,生产时为空字符串)WP_ENVIRONMENT_TYPE
— 设置为环境(development
、staging
、production
)WP_HOME
— WordPress主机的完整URL(https://example.com)WP_SITEURL
— 避免编辑此变量。WordPress的完整URL,包括子目录(https://example.com/wordpress)ACF_PRO_KEY
、GRAVITY_FORMS_KEY
、POLYLANG_PRO_KEY
— 付费插件许可证密钥。AUTH_KEY
、SECURE_AUTH_KEY
、LOGGED_IN_KEY
、NONCE_KEY
、AUTH_SALT
、SECURE_AUTH_SALT
、LOGGED_IN_SALT
、NONCE_SALT
- 使用wp-cli-dotenv-command生成。
- 使用我们的WordPress salts生成器生成。
- 数据库变量
-
为Polylang Pro的安装提供凭证。
此步骤是必要的,因为Polylang Pro使用Easy Digital Downloads (EDD)进行分发。
composer config [--global] --editor --auth
{ "http-basic": { "polylang.pro": { "username": "username", "password": "password" } } }
-
可以在
www/plugins
和www/mu-plugins
中添加插件,并在www/themes
中添加主题。- 就像普通WordPress站点一样(如果您想索引它们,请添加对
.gitignore
的例外) - 或作为Composer依赖项。
- 就像普通WordPress站点一样(如果您想索引它们,请添加对
-
大多数项目使用漂亮的永久链接。这需要在Apache服务器上创建
.htaccess
文件。由于它可能包含特定于环境的要求,因此此文件在Git中不被索引。要创建或更新文件(并更新数据库中的重写规则)wp rewrite flush --hard
-
将Web服务器的文档根设置为Jazz的
www
文件夹:/path/to/site/www/
。 -
在
https://example.com/wordpress/wp-admin/
访问WordPress管理。
如果您选择使用起始数据库之一,您需要更改以下内容
- 替换基本URI
example.test
- 添加您的许可证密钥
acf_pro_license
rg_gforms_key
rg_gforms_captcha_public_key
rg_gforms_captcha_private_key
贡献
我们欢迎所有人的贡献。我们有一些贡献指南来帮助您开始。
致谢
此模板基于许多人的扎实工作,包括