manuxi/ /sulu-event-bundle
欢迎来到Sulu事件!
1.6.1
2024-09-20 23:25 UTC
Requires
- php: ^8.1
- doctrine/doctrine-bundle: ^2.13
- phpcr/phpcr-migrations-bundle: ^1.6
- sulu/automation-bundle: ^2.1
- sulu/sulu: ^2.5
- symfony/config: ^6.2 | ^7.0
- symfony/dependency-injection: ^6.2 | ^7.0
- symfony/framework-bundle: ^6.2 | ^7.0
- symfony/http-foundation: ^6.2 | ^7.0
- symfony/http-kernel: ^6.2 | ^7.0
- symfony/intl: ^6.2 | ^7.0
- symfony/security-core: ^6.2 | ^7.0
- symfony/translation: ^6.2 | ^7.0
- twig/extra-bundle: ^3.12
- twig/intl-extra: ^3.12
Requires (Dev)
- jackalope/jackalope-doctrine-dbal: ^1.3.4
- phpspec/prophecy: ^1.17
- phpunit/phpunit: ^8.0
- symfony/browser-kit: ^4.4 | ^5.0 | ^6.2 | ^7.0
- symfony/console: ^4.4 | ^5.0 | ^6.2 | ^7.0
- symfony/phpunit-bridge: ^4.4 | ^5.0 | ^6.2 | ^7.0
- dev-main
- 1.6.1
- 1.6.0
- 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.4.0
- 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.2.10
- 1.2.9
- 1.2.8
- 1.2.7
- 1.2.6
- 1.2.5
- 1.2.4
- 1.2.3
- 1.2.2
- 1.2.1
- 1.2.0
- 1.1.5
- 1.1.4
- 1.1.2
- 1.1.1
- 1.1.0
- 1.0.16
- 1.0.15
- 1.0.14
- 1.0.13
- 1.0.12
- 1.0.11
- v1.0.10
- v1.0.9
- v1.0.8
- v1.0.7
- v1.0.6
- v1.0.5
- v1.0.4
- v1.0.2
- v1.0.1
- v1.0.0
- dev-master
This package is auto-updated.
Last update: 2024-09-20 23:25:54 UTC
README
此包基于Sulu workshop制作。我制作它是为了在项目中管理事件。
此包包含
- 事件内容类型的几个过滤器
- 链接提供者
- 网站地图提供者
- 废纸箱项目处理程序
- 自动化处理程序
- 将联系人分配为作者的选项
- 用于解析事件/获取事件列表的Twig扩展
- 用于显示活动和更多事件的事件
新闻及其元信息可翻译。
包含一个示例twig模板。
事件及其元信息可翻译。
请放心提交功能请求。此包仍在开发中。使用风险自负 🤞🏻
👩🏭 安装
使用以下命令安装包
composer require manuxi/sulu-event-bundle
如果您不使用Symfony Flex,您还需要在您的config/bundles.php
文件中添加此包
return [ //... Manuxi\SuluEventBundle\SuluEventBundle::class => ['all' => true], ];
请将以下内容添加到您的routes_admin.yaml
SuluEventBundle: resource: '@SuluEventBundle/Resources/config/routes_admin.yml'
最后但同样重要的是,需要更新数据库模式。
将创建一些表(以app_为前缀)
location, event, event_translation, event_seo, event_excerpt(以及一些多对多关系表)。
使用php bin/console doctrine:schema:update --dump-sql
查看所需的查询。
通过执行php bin/console doctrine:schema:update --force
更新模式。
确保您仅处理包的模式更新!
🎣 使用
首先:为事件授予权限。页面重新加载后,您应该能在导航中看到事件项。开始创建地点,然后创建事件。使用smart_content属性类型显示事件列表,例如。
<property name="events" type="smart_content"> <meta> <title lang="en">Events</title> <title lang="de">Veranstaltungen</title> </meta> <params> <param name="provider" value="events"/> <param name="max_per_page" value="5"/> <param name="page_parameter" value="page"/> </params> </property>
事件列表的对应twig模板示例
{% for event in events %} <div class="col"> <h2> {{ event.title }} </h2> <p> {{ event.startDate|format_datetime('full', 'none', locale=app.request.getLocale()) }} {% if endDate and startDate != endDate %} - {{ event.endDate|format_datetime('full', 'none', locale=app.request.getLocale()) }} {% endif %} </p> <p> {{ event.summary|raw }} </p> <p> {{ event.text|raw }} </p> <p> {{ event.footer|raw }} </p> <p> <a class="btn btn-primary" href="{{ event.routePath }}" role="button"> {{ "Read more..."|trans }} <i class="fa fa-angle-double-right"></i> </a> </p> </div> {% endfor %}
由于SEO和摘要选项卡在事件编辑器中可用,因此可以提供类似于渲染页面时的元信息。
🧶 配置
目前还没有配置。我在做这件事 :)
👩🍳 贡献
为了简单起见,这个扩展保持较小。请放心提交问题或拉取请求。一如既往,我很高兴得到您的反馈以改进扩展 :).