elvandar / kazetenn-pages
处理symfony的页面包。Kazetenn项目的一部分
Requires
- php: 8.1.*
- ext-json: *
- composer/package-versions-deprecated: 1.11.99.4
- doctrine/annotations: 1.13.*
- doctrine/doctrine-bundle: 2.7.*
- doctrine/doctrine-migrations-bundle: 3.2.*
- doctrine/orm: 2.12.*
- elvandar/kazetenn-admin: 1.*
- elvandar/kazetenn-core: 1.*
- elvandar/kazetenn-users: 1.*
- phpdocumentor/reflection-docblock: >=5.2
- stof/doctrine-extensions-bundle: >=1.7
- symfony/asset: 6.2.*
- symfony/console: 6.2.*
- symfony/dotenv: 6.2.*
- symfony/expression-language: 6.2.*
- symfony/flex: 2.2.*
- symfony/form: 6.2.*
- symfony/framework-bundle: 6.2.*
- symfony/http-client: 6.2.*
- symfony/intl: 6.2.*
- symfony/mailer: 6.2.*
- symfony/mime: 6.2.*
- symfony/monolog-bundle: 3.*
- symfony/notifier: 6.2.*
- symfony/process: 6.2.*
- symfony/property-access: 6.2.*
- symfony/property-info: 6.2.*
- symfony/proxy-manager-bridge: 6.2.*
- symfony/runtime: 6.2.*
- symfony/security-bundle: 6.2.*
- symfony/serializer: 6.2.*
- symfony/string: 6.2.*
- symfony/translation: 6.2.*
- symfony/twig-bundle: 6.2.*
- symfony/uid: 6.2.*
- symfony/validator: 6.2.*
- symfony/web-link: 6.2.*
- symfony/yaml: 6.2.*
- twig/extra-bundle: 3.4.*
- twig/twig: 3.4.*
Requires (Dev)
- icanhazstring/composer-unused: >=0.8.1
- phpstan/phpstan: >=1.4
- phpunit/phpunit: >=9.5
- symfony/browser-kit: 6.2.*
- symfony/css-selector: 6.2.*
- symfony/debug-bundle: 6.2.*
- symfony/maker-bundle: >=1.0
- symfony/phpunit-bridge: >=5.4
- symfony/stopwatch: 6.2.*
- symfony/web-profiler-bundle: 6.2.*
- symfony/webpack-encore-bundle: >=1.13
This package is auto-updated.
Last update: 2024-09-15 23:52:45 UTC
README
描述
Kazetenn Pages是一个symfony包,允许您以编程方式处理基本页面。
安装
您可以使用
composer require elvandar/kazetennpages
来安装此包。
您还需要配置 stof/doctrineextensionsbundle
在 config/packages/stof_doctrine_extensions.yaml
stof_doctrine_extensions: orm: your_orm: timestampable: true
使用方法
该包提供了一种简单的数据模型来处理页面的程序性创建,以及一些路由和视图来显示这些页面。
配置
要使用包提供的路由,您需要将以下行添加到 config/routes.yaml
kazetenn_pages: resource: "@KazetennPages/Resources/config/routes.yaml"
在 config/packages/kazetenn-pages.yaml
kazetenn_pages: blog_url: ""
默认情况下,显示路由前没有前缀,但您可以使用此配置添加一个。
数据模型
该包围绕2个实体构建
Page
代表要显示的页面
在页面中,您可以定义
- 标题
- 别名
- 父级
- 内容列表
这将用于处理页面显示和URL
如果页面没有父级,其URL将是
/{blog_url}/{slug}
如果页面有父级,其URL将是
/{blog_url}/{parent_slug}/{slug}
PageContent
处理页面的内容。
在PageContent中,您可以定义
- 内容
- 模板
- 父级
- 排序
- 对齐(垂直或水平)
- 内容列表
内容是text/html。它始终使用raw
twig函数进行渲染。
模板允许您定义一个twig模板来个性化内容的渲染,而无需在数据库中存储HTML。
一个PageContent可以引用多个其他PageContent(子项)。使用对齐属性,您可以定义内容子项的渲染方式。通过这种方式,您可以轻松创建内容网格,允许您轻松排序内容。为此,PageContent的内容属性可以是null,允许您创建排序PageContent。
最后,排序属性允许您选择PageContent及其同级内容的渲染顺序。
许可证
页面包采用MIT许可证