getgrav / grav
现代、极快、无比简单且功能惊人的Flat-File CMS
Requires
- php: ^7.3.6 || ^8.0
- ext-curl: *
- ext-dom: *
- ext-gd: *
- ext-json: *
- ext-libxml: *
- ext-openssl: *
- ext-zip: *
- composer/ca-bundle: ^1.2
- composer/semver: ^1.4
- doctrine/cache: ^1.10
- doctrine/collections: ^1.6
- donatj/phpuseragentparser: ~1.1
- dragonmantank/cron-expression: ^1.2
- erusev/parsedown: ^1.7
- erusev/parsedown-extra: ~0.8
- filp/whoops: ~2.9
- getgrav/cache: ^2.0
- getgrav/image: ^3.0
- guzzlehttp/psr7: ^1.7
- itsgoingd/clockwork: ^5.0
- league/climate: ^3.6
- matthiasmullie/minify: ^1.3
- maximebf/debugbar: ~1.16
- miljar/php-exif: ^0.6
- monolog/monolog: ~1.25
- multiavatar/multiavatar-php: ^1.0
- nyholm/psr7: ^1.3
- nyholm/psr7-server: ^1.0
- pimple/pimple: ~3.5.0
- psr/container: ~1.1.0
- psr/http-message: ^1.0
- psr/http-server-middleware: ^1.0
- psr/simple-cache: ^1.0
- rhukster/dom-sanitizer: ^1.0
- rockettheme/toolbox: ~1.5
- symfony/console: ~4.4
- symfony/contracts: ~1.1
- symfony/event-dispatcher: ~4.4
- symfony/http-client: ^4.4
- symfony/polyfill-iconv: ^1.23
- symfony/polyfill-mbstring: ~1.23
- symfony/polyfill-php74: ^1.23
- symfony/polyfill-php80: ^1.23
- symfony/polyfill-php81: ^1.23
- symfony/process: ~4.4
- symfony/var-dumper: ~4.4
- symfony/yaml: ~4.4
- twig/twig: ~v1.44
- willdurand/negotiation: ^3.0
Requires (Dev)
Suggests
- ext-exif: Needed to use exif data from images.
- ext-iconv: Recommended for better performance
- ext-intl: Recommended for multi-language sites
- ext-mbstring: Recommended for better performance
- ext-memcache: Needed to support Memcache servers
- ext-memcached: Needed to support Memcached servers
- ext-redis: Needed to support Redis servers
- ext-zend-opcache: Recommended for better performance
Replaces
- dev-develop / 1.x-dev
- 1.7.46
- 1.7.45
- 1.7.44
- 1.7.43
- 1.7.42.3
- 1.7.42.2
- 1.7.42.1
- 1.7.42
- 1.7.41.2
- 1.7.41.1
- 1.7.41
- 1.7.40
- 1.7.39.4
- 1.7.39.3
- 1.7.39.2
- 1.7.39.1
- 1.7.39
- 1.7.38
- 1.7.37.1
- 1.7.37
- 1.7.36
- 1.7.35
- 1.7.34
- 1.7.33
- 1.7.32
- 1.7.31
- 1.7.30
- 1.7.29.1
- 1.7.29
- 1.7.28
- 1.7.27.1
- 1.7.27
- 1.7.26.1
- 1.7.26
- 1.7.25
- 1.7.24
- 1.7.23
- 1.7.22
- 1.7.21
- 1.7.20
- 1.7.19
- 1.7.18
- 1.7.17
- 1.7.16
- 1.7.15
- 1.7.14
- 1.7.13
- 1.7.12
- 1.7.10
- 1.7.9
- 1.7.8
- 1.7.7
- 1.7.6
- 1.7.5
- 1.7.4
- 1.7.3
- 1.7.1
- 1.7.0
- 1.7.0-rc.20
- 1.7.0-rc.19
- 1.7.0-rc.18
- 1.7.0-rc.17
- 1.7.0-rc.16
- 1.7.0-rc.15
- 1.7.0-rc.14
- 1.7.0-rc.13
- 1.7.0-rc.12
- 1.7.0-rc.11
- 1.7.0-rc.10
- 1.7.0-rc.9
- 1.7.0-rc.8
- 1.7.0-rc.7
- 1.7.0-rc.6
- 1.7.0-rc.5
- 1.7.0-rc.4
- 1.7.0-rc.3
- 1.7.0-rc.2
- 1.7.0-rc.1
- 1.7.0-beta.10
- 1.7.0-beta.9
- 1.7.0-beta.8
- 1.7.0-beta.7
- 1.7.0-beta.6
- 1.7.0-beta.5
- 1.7.0-beta.4
- 1.7.0-beta.3
- 1.7.0-beta.2
- 1.7.0-beta.1
- 1.6.x-dev
- 1.6.31
- 1.6.30
- 1.6.29
- 1.6.28
- 1.6.27
- 1.6.26
- 1.6.25
- 1.6.24
- 1.6.23
- 1.6.22
- 1.6.21
- 1.6.20
- 1.6.19
- 1.6.18
- 1.6.17
- 1.6.16
- 1.6.15
- 1.6.14
- 1.6.13
- 1.6.12
- 1.6.11
- 1.6.10
- 1.6.9
- 1.6.8
- 1.6.7
- 1.6.6
- 1.6.5
- 1.6.4
- 1.6.3
- 1.6.2
- 1.6.1
- 1.6.0
- 1.6.0-rc.4
- 1.6.0-rc.3
- 1.6.0-rc.2
- 1.6.0-rc.1
- 1.6.0-beta.8
- 1.6.0-beta.7
- 1.6.0-beta.6
- 1.6.0-beta.5
- 1.6.0-beta.4
- 1.6.0-beta.3
- 1.6.0-beta.2
- 1.6.0-beta.1
- 1.5.10
- 1.5.9
- 1.5.8
- 1.5.7
- 1.5.6
- 1.5.5
- 1.5.4
- 1.5.3
- 1.5.2
- 1.5.1
- 1.5.0
- 1.5.0-rc.1
- 1.5.0-beta.2
- 1.5.0-beta.1
- 1.4.8
- 1.4.7
- 1.4.6
- 1.4.5
- 1.4.4
- 1.4.3
- 1.4.2
- 1.4.1
- 1.4.0
- 1.4.0-rc.2
- 1.4.0-rc.1
- 1.4.0-beta.3
- 1.4.0-beta.2
- 1.4.0-beta.1
- 1.3.10
- 1.3.9
- 1.3.8
- 1.3.7
- 1.3.6
- 1.3.5
- 1.3.4
- 1.3.3
- 1.3.2
- 1.3.1
- 1.3.0
- 1.3.0-rc.5
- 1.3.0-rc.4
- 1.3.0-rc.3
- 1.3.0-rc.2
- 1.3.0-rc.1
- 1.2.4
- 1.2.3
- 1.2.2
- 1.2.1
- 1.2.0
- 1.2.0-rc.3
- 1.2.0-rc.2
- 1.2.0-rc.1
- 1.1.17
- 1.1.16
- 1.1.15
- 1.1.14
- 1.1.13
- 1.1.12
- 1.1.11
- 1.1.10
- 1.1.9
- 1.1.9-rc.3
- 1.1.9-rc.2
- 1.1.9-rc.1
- 1.1.8
- 1.1.7
- 1.1.6
- 1.1.5
- 1.1.4
- 1.1.3
- 1.1.2
- 1.1.1
- 1.1.0
- 1.1.0-rc.3
- 1.1.0-rc.2
- 1.1.0-rc.1
- 1.1.0-beta.5
- 1.1.0-beta.4
- 1.1.0-beta.3
- 1.1.0-beta.2
- 1.1.0-beta.1
- 1.0.10
- 1.0.9
- 1.0.8
- 1.0.7
- 1.0.6
- 1.0.5
- 1.0.4
- 1.0.3
- 1.0.2
- 1.0.1
- 1.0.0
- 1.0.0-rc.6
- 1.0.0-rc.5
- 1.0.0-rc.4
- 1.0.0-rc.3
- 1.0.0-rc.2
- 1.0.0-rc.1
- 0.9.45
- 0.9.44
- 0.9.43
- 0.9.42
- 0.9.41
- 0.9.40
- 0.9.39
- 0.9.38
- 0.9.37
- 0.9.36
- 0.9.35
- 0.9.34
- 0.9.33
- 0.9.32
- 0.9.31
- 0.9.30
- 0.9.29
- 0.9.28
- 0.9.27
- 0.9.26
- 0.9.25
- 0.9.24
- 0.9.23
- 0.9.22
- 0.9.21
- 0.9.20
- 0.9.19
- 0.9.18
- 0.9.17
- 0.9.16
- 0.9.15
- 0.9.14
- 0.9.13
- 0.9.12
- 0.9.11
- 0.9.10
- 0.9.9
- 0.9.8
- 0.9.7
- 0.9.6
- 0.9.5
- 0.9.4
- 0.9.3
- 0.9.2
- 0.9.1
- 0.9.0
- 0.8.0
- dev-master
- dev-revert-3719-develop
- dev-ricardo118-patch-1
- dev-feature/v1.8
- dev-feature/multiple-page-paths
- dev-feature/media
- dev-feature/multiavatar
- dev-feature/js-module-assets
- dev-feature/php-81
- dev-feature/watermark
- dev-build_test
- dev-feature/clockwork-5.0
- dev-ricardo-patch-noprocess
- dev-feature/httpclient
- dev-ricardo-patch-menu
- dev-feature/clockwork-4.0
- dev-feature/parsedown-1.8-compatibility
This package is auto-updated.
Last update: 2024-09-22 14:30:08 UTC
README
Grav 是一个 快速、简单、灵活 的基于文件的 Web 平台。无需安装。只需解压 ZIP 文件,即可开始使用。它遵循其他基于文件的 CMS 平台的原则,但与大多数平台的设计理念不同。Grav 内置强大的 包管理系统,允许轻松安装和升级插件和主题,以及简单更新 Grav 本身。
Grav 的底层架构旨在使用经过验证和 最佳 的技术,以确保 Grav 易于使用且易于扩展。其中一些关键技术包括
- Twig 模板:用于强大的用户界面控制
- Markdown:用于轻松创建内容
- YAML:用于简单的配置
- Parsedown:用于快速 Markdown 和 Markdown Extra 支持
- Doctrine 缓存:用于性能
- Pimple 依赖注入容器:用于可扩展性和可维护性
- Symfony 事件调度器:用于插件事件处理
- Symfony 控制台:用于 CLI 界面
- Gregwar 图像库:用于动态图像处理
要求
文档
完整文档可在 learn.getgrav.org 上找到。
快速入门
以下是获取 Grav 的选项
下载 Grav 包
您可以从 https://getgrav.org 上的下载页面 下载一个 预构建 的包
使用 Composer
您可以使用以下命令创建一个新的项目,该项目使用最新的 稳定 版本 Grav
$ composer create-project getgrav/grav ~/webroot/grav
从 GitHub
-
将 Grav 存储库从 https://github.com/getgrav/grav 克隆到服务器根目录下的一个文件夹中,例如
~/webroot/grav
。启动一个 终端 或 控制台 并导航到根目录文件夹$ cd ~/webroot $ git clone https://github.com/getgrav/grav.git
-
使用 Grav CLI 应用程序
bin/grav
安装 插件 和 主题依赖。$ cd ~/webroot/grav $ bin/grav install
查看更多信息请参阅 安装步骤。
添加功能
您可以从 插件 或 主题 的相应标签页在 https://getgrav.org 上的下载页面手动下载,但首选解决方案是使用 Grav 包管理器 或 GPM
。
$ bin/gpm index
这将显示所有可用的插件,然后您可以使用以下命令安装一个或多个
$ bin/gpm install <plugin/theme>
更新
要更新 Grav,您应使用 Grav 包管理器 或 GPM
。
$ bin/gpm selfupgrade
更新插件和主题
$ bin/gpm update
从旧版本升级
贡献
我们感谢对 Grav 的任何贡献,无论是关于错误、语法,还是仅仅是一个建议或改进!请参阅贡献指南以获取更多关于此主题的指导。
安全问题
如果您发现与 Grav 或其插件相关的可能的安全问题,请通过电子邮件将问题发送至 [email protected],我们将尽快处理。
入门指南
- 什么是 Grav?
- 在几秒钟内安装 Grav
- 了解 配置
- 查看我们提供的免费 骨架
- 如果您有任何问题,欢迎加入我们的 Discord 聊天服务器!
- 祝您玩得开心!
探索更多
- 查看我们的 基础教程
- 深入了解更多 高级 功能
- 了解 Grav CLI
- 查看 Grav 烹饪书 中的示例
- 更多 精彩的 Grav 内容
赞助者
通过每月捐赠支持 Grav,帮助我们继续开发。[成为赞助者]
支持者
通过每月捐赠支持 Grav,帮助我们继续开发。[成为支持者]
赞助商
通过年度捐赠支持 Grav,帮助我们继续开发。[成为赞助商]
许可
查看 LICENSE
运行测试
首先,通过在 Grav 根目录下运行 composer install
安装开发依赖。
然后,运行 composer test
将运行单元测试,这些测试应在任何网站上始终成功执行。Windows 用户应使用 composer test-windows
命令。您还可以运行单个单元测试文件,例如 composer test tests/unit/Grav/Common/AssetsTest.php
要运行 phpstan 测试,您应该运行
composer phpstan
用于全局测试composer phpstan-framework
用于更严格的测试composer phpstan-plugins
用于测试所有已安装的插件