softspring / symfonic
强大的Symfony CMS
Requires
- php: >=8.1
- softspring/cms-bundle: ^5.2
- softspring/cms-module-collection: ^5.2
- softspring/cms-translation-plugin: ^5.2
- symfony/http-kernel: ^5.4|^6.0|^7.0
Requires (Dev)
- friendsofphp/php-cs-fixer: 3.64.*
- phpstan/phpstan: ^1.10.49
- 5.3.x-dev
- v5.3.0-beta2
- v5.3.0-beta1
- 5.2.x-dev
- v5.2.7
- v5.2.6
- v5.2.5
- v5.2.4
- v5.2.3
- v5.2.2
- v5.2.1
- v5.2.0
- v5.2.0-rc10
- v5.2.0-rc9
- v5.2.0-rc8
- v5.2.0-rc7
- v5.2.0-rc6
- v5.2.0-rc5
- v5.2.0-rc4
- v5.2.0-rc1
- 5.1.x-dev
- v5.1.25
- v5.1.24
- v5.1.23
- v5.1.22
- v5.1.21
- v5.1.20
- v5.1.19
- v5.1.18
- v5.1.17
- v5.1.16
- v5.1.15
- v5.1.14
- v5.1.13
- v5.1.12
- v5.1.11
- v5.1.10
- v5.1.9
- v5.1.8
- v5.1.7
- v5.1.6
- v5.1.5
- v5.1.2
- v5.1.1
- v5.1.0
- dev-dependabot/composer/friendsofphp/php-cs-fixer-3.58.staror-3.60.staror-3.64.star
- dev-dependabot/github_actions/actions/setup-node-4
This package is auto-updated.
Last update: 2024-09-25 14:22:38 UTC
README
Symfonic
强大的Symfony CMS。
索引
- 为什么选择Symfonic
- 如何安装和使用Symfonic
- 在干净的Symfony项目中使用Symfonic
- 与Sylius项目一起使用Symfonic
- 添加更多组件
1. 为什么选择Symfonic
- 使用简单或复杂的块结构设计布局,并在不同的页面或部分中重复使用。
- 通过组合您自己创建的模块或使用我们提供的模块来创建页面。
- 对于不同页面上的常见部分,使用我们可重复使用的块概念简化创建。
- 管理同一页面的多个版本,并在不担心出错的情况下预览更改,当您对最终版本满意时再发布!
- 所有这些都从第一个块开始,具有语义化的网站,响应式,多站点,多语言和SEO优化。
2. 如何安装和使用Symfonic
2.1 在干净的Symfony项目中使用Symfonic
安装Symfony
按照https://symfony.com.cn/doc/current/setup.html中的当前说明安装Symfony
symfony new my-symfonic-project --version="6.2.*" --webapp
以前的配置
要使用CMS,我们需要一个MySQL数据库(PostgreSQL也应该兼容)。
在Docker中配置数据库
我们将使用项目附带的自定义文件docker-compose.yaml
注意 这些是开发值,不适合生产。
version: '3' services: ###> doctrine/doctrine-bundle ### database: image: "mysql:8.0" environment: MYSQL_ROOT_PASSWORD: nopassword MYSQL_DATABASE: cms MYSQL_USER: test MYSQL_PASSWORD: nopassword ports: - 3306:3306 volumes: - database_data:/var/lib/mysql ###< doctrine/doctrine-bundle ### volumes: ###> doctrine/doctrine-bundle ### database_data: ###< doctrine/doctrine-bundle ###
我们可以开始容器
docker-compose up -d
配置环境值
在.env中更改MySQL数据库的值
###> doctrine/doctrine-bundle ### DATABASE_URL="mysql://test:nopassword@127.0.0.1:3306/cms?serverVersion=8.0&charset=utf8mb4" ###< doctrine/doctrine-bundle ###
配置Softspring的Symfony Flex(用于开发)
注意 当Softspring的Symfony Flex食谱集成到contrib存储库时,此步骤将不再需要
在composer.json中,我们添加端点并将allow-contrib设置为true
{ "extra": { "symfony": { "allow-contrib": true, "require": "6.2.*", "endpoint": ["https://api.github.com/repos/softspring/recipes/contents/index.json", "flex://defaults"] } } }
临时
直到我们发布版本5.3的包,我们不得不包含(在composer.json中)
{ "minimum-stability": "dev" }
配置webpack
注意 如果我们没有安装yarn,我们需要在安装它之前安装它。在Ubuntu < 18.04中,yarnpkg和cmdtest包之间存在一些问题
composer require webpack yarn install yarn add @popperjs/core bootstrap bootstrap-icons underscore.string sass-loader@^13.0.0 sass --dev
在webpack中配置管理器
在文件webpack.config.js中
Encore // ... // add admin.js .addEntry('admin', './assets/admin.js') // ... // uncomment sass loader .enableSassLoader() // ...
安装symfonic
composer require softspring/symfonic:^5.3@dev bin/console doctrine:migrations:migrate -n
注意 如果我们遇到驱动程序错误,我们需要在我们的php版本中安装php-mysql。
我们安装额外的模块
composer require softspring/cms-module-collection:^5.3
然后编译资源
yarn build
Symfony flex应该已经完成所有工作,我们将有一个准备就绪的项目,我们可以可视化它。
一些调整(目前)
为了让应用程序正常工作,我们必须包括framework.enabled_locales
# config/packages/translation.yaml framework: enabled_locales: ['en', 'es']
我们无法通过Symfony Flex食谱覆盖templates/base.html.twig,因此您必须手动更改它(直到我们找到另一种解决方案)。目前
{# templates/base.html.twig #} {% extends '@SfsComponents/base.html.twig' %}
我们可以启动应用程序
我们将使用Symfony CLI命令来提供服务
symfony server:start
完成此操作后,我们将在https://127.0.0.1:8000/上遇到未找到错误。
如果转到https://127.0.0.1:8000/admin/cms/pages,我们将能够配置我们的第一个页面。