silverstripe-module / skeleton
Silverstripe CMS 模块的骨架。
Requires
- silverstripe/admin: ^2.0
- silverstripe/framework: ^5.0
Requires (Dev)
This package is auto-updated.
Last update: 2024-09-01 22:30:12 UTC
README
一个有用的骨架,可以更轻松地创建符合 模块标准 的 Silverstripe CMS 模块。
本 README 包含了关于此模块基类应如何自定义以满足您的模块需求的描述。例如,上面 H1 中的模块名称应该是您的模块名称,而您现在正在阅读的描述文本是您应该提供关于您的模块做什么的良好简短说明的地方。
在可能的情况下,我们已包含默认文本,可以直接包含到您的模块中,并在其他地方指出您需要自定义的地方。
以下是你应包括在 README.md
中的部分模板,以符合模块标准并帮助他人使用您的模块。
准备此模块以供自己使用的步骤
确保您阅读了 '发布模块' 指南,并更新您的模块的 composer.json
以将您的代码指定为 Silverstripe CMS 模块。
- 将此存储库克隆到一个文件夹中
- 将您的姓名/组织添加到
LICENSE.md
- 更新此 README 以包含有关您模块的信息。确保删除不相关的部分,并在相关位置编辑占位符。
- 检查提供的各个目录中的 README 文件。当您添加了您的代码后,最终应删除这些 README 文件。
- 使用您的需求和包名称更新模块的
composer.json
- 更新(或删除)
package.json
以包含您的需求和包名称。运行yarn install
(或删除yarn.lock
)以确保正确解决依赖关系 - 通过运行
rm -rf .git && git init
清除 git 历史 - 添加并推送到 VCS 存储库
- 要么在 packagist.org 上 发布 模块,要么将 自定义存储库 添加到您的 main
composer.json
- 在主
composer.json
中要求模块 - 如果您需要构建 CSS 或 JS 并使用来自
silverstripe/admin
的组件、注入器、scss 变量等- 请确保使用
composer install --prefer-source
安装silverstripe/admin
而不是默认的--prefer-dist
(如果您已经安装了它,可以使用composer reinstall silverstripe/admin --prefer-source
) - 如果您依赖来自
silverstripe/admin
的额外依赖项而不是将它们作为package.json
文件中的依赖项添加,则需要通过在vendor/silverstripe/admin/
目录中运行yarn install
在silverstripe/admin
中安装第三方依赖项。
- 请确保使用
- 开始开发您的模块!
许可证
请参阅 许可证
本模块模板默认使用“BSD-3-Clause”许可协议。BSD-3 许可协议是最宽松的开源许可协议之一,被大多数 Silverstripe CMS 模块使用。
若要将您的模块发布在其他许可协议下
- 更新
license.md
文件 - 更新您的 [composer.json](composer.json) 中的
license
键。
您可以使用 choosealicense.com 来帮助您为您的项目选择合适的许可协议。
您不需要在 README 文件中保留此部分 - LICENSE.md
文件就足够了。
安装
将以下命令中的 silverstripe-module/skeleton
替换为您模块的 composer 名称。
composer require silverstripe-module/skeleton
注意:当您完成模块后,将其提交到 Packagist 或将其作为 VCS 仓库添加到项目的 composer.json 中,并指向私有仓库的 URL。
文档
在此处添加到您的 docs/<language>
文件夹中的链接,除非您的模块只需要最少的文档,在这种情况下,请在此处添加并删除文档文件夹。如果您有多个文档页面,这可以作为一个快速的内容表。
示例配置
如果您的模块在 Silverstripe CMS 中使用了配置 API,提供示例配置是一个好主意,这将使模块能够立即工作,并让用户了解可能的配置选项。尽管请注意,在许多情况下,仅链接到文档就足够了。
尽可能提供语法高亮的代码示例。
Page: config_option: true another_config: - item1 - item2