c975l / events-bundle
用于管理事件并显示轮播图的工具
Requires
Requires (Dev)
- phpunit/phpunit: ^7
- rector/rector: ^0
- dev-master
- v3.0.2
- v3.0.1
- v3.0
- 2.x-dev
- v2.4.3
- v2.4.2
- v2.4.1
- v2.4
- v2.3.1
- v2.3
- v2.2.2
- v2.2.1.1
- v2.2.1
- v2.2
- v2.1.5
- v2.1.4
- v2.1.3
- v2.1.2
- v2.1.1
- v2.1
- v2.0
- 1.x-dev
- v1.17.5
- v1.17.4.2
- v1.17.4.1
- v1.17.4
- v1.17.3
- v1.17.2
- v1.17.1.1
- v1.17.1
- v1.17
- v1.16.1
- v1.16
- v1.15.2
- v1.15.1
- v1.15
- v1.14.3
- v1.14.2
- v1.14.1
- v1.14
- v1.13.6
- v1.13.5
- v1.13.4
- v1.13.3
- v1.13.2
- v1.13.1
- v1.13
- v1.12.1
- v1.12
- v1.11
- v1.10.2
- v1.10.1
- v1.10
- v1.9
- v1.8.3
- v1.8.2
- v1.8.1
- v1.8
- v1.7.2
- v1.7.1
- v1.7
- v1.6.2
- v1.6.1
- v1.6
- v1.5
- v1.4
- v1.3.1
- v1.3
- v1.2
- v1.1
- v1.0
- dev-dev
This package is auto-updated.
Last update: 2024-02-14 12:30:25 UTC
README
EventsBundle 可以执行以下操作
- 显示请求的事件
- 提供管理事件的工具
- 提供事件轮播图
- 提供链接以集成到日历(ics)
- 与您的网页设计集成
此 Bundle 依赖于 TinyMce、jQuery、Bootstrap 和 Bootstrap DatePicker 的使用,并需要 Twig/Extensions 来本地化日期和时间。具体信息请访问 TinyMce、jQuery、Bootstrap 和 Bootstrap DatePicker。
Bundle 安装
步骤 1:下载 Bundle
使用 Composer 安装库
composer require c975l/evebts-bundle
步骤 2:启用 Bundle
然后,通过将它们添加到项目 app/AppKernel.php
文件中注册的 Bundle 列表中来启用 Bundle
<?php class AppKernel extends Kernel { public function registerBundles() { $bundles = [ // ... new c975L\EventsBundle\c975LEventsBundle(), ]; } }
步骤 3:配置 Bundle
检查其配置的依赖项
v2.0+ 的 c975LEventsBundle 使用 c975L/ConfigBundle 来管理配置参数。使用路由 "/events/config" 并以适当的用户角色来修改它们。
从 v1.x 升级?请查看 UPGRADE.md。
如果您使用 Git 进行版本控制,请确保在 .gitignore
中添加完整路径 web/images/[folderPictures]
,否则 Git 将修改所有内容。
步骤 4:启用路由
然后,通过将它们添加到项目 app/config/routing.yml
文件中来启用路由
c975_l_events: resource: "@c975LEventsBundle/Controller/" type: annotation prefix: / #Multilingual website use the following #prefix: /{_locale} #defaults: { _locale: '%locale%' } #requirements: # _locale: en|fr|es
步骤 5:创建 MySql 表
您可以使用 php bin/console make:migration
来创建迁移文件,如 Symfony 的 Doctrine 文档 中所述,或者使用 /Resources/sql/events.sql
来创建名为 events
的表。`DROP TABLE` 已被注释以避免意外删除。
步骤 6:链接和初始化 TinyMce
强烈建议使用从第三方包中覆盖模板功能以完全集成到您的网站中。
为此,只需在您的应用程序中创建以下结构app/Resources/c975LEventsBundle/views/
,然后在该结构中复制文件layout.html.twig
和tinymceInit.html.twig
以覆盖现有的包文件,然后应用您需要的更改,如语言等。
在layout.html.twig
中,它将主要扩展您的布局并定义特定的变量,例如
{% extends 'layout.html.twig' %} {# Defines specific variables #} {% set title = 'Events (' ~ title ~ ')' %} {% block content %} {% block events_content %} {% endblock %} {% endblock %}
建议使用Tinymce Cloud版本。您需要一个免费API密钥。或者您可以下载并链接到您的项目https://www.tinymce.com/download/。
如果您想保留所有可用的工具并且不更改Tinymce,您不需要覆盖tinymceInit.html.twig
。您只需要在config.yml
中提供您的tinymceApiKey
(如果您使用云版本)和tinymceLanguage
(+将相应的文件上传到您的服务器上的web/vendor/tinymce/[tinymceLanguage].js
)。或者您也可以覆盖tinymceInit.html.twig
。
第7步:链接和初始化Bootstrap DatePicker
在上面的覆盖文件设置中,您必须添加一个链接到Bootstrap DatePicker的云版本(推荐)https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.7.0/js/bootstrap-datepicker.min.js
。
您可能还想设置来自cdnjs.com的特定区域。
初始化是在包的模板中完成的。
如何使用
显示事件的路径是http://example.com/events/{event}
,编辑的路径是http://example.com/events/edit/{event}
。
如果用户已识别并具有访问权限,则会在标题下方显示一个工具栏。
在Twig中,可以通过<a href="{{ path('events_display', { 'slug': 'slug' }) }}">事件标题</a>
链接到页面。
可用的不同路由(命名自解释)有
- events_display
- events_config
- events_create
- events_modify
- events_duplicate
- events_delete
- events_dashboard
- events_all
- events_ical
- events_slug
- events_help
包含轮播图
要将轮播图包含在页面中,只需使用{{ events_carousel(number) }}
,其中number
是要显示的事件数量。
创建网站地图
在控制台中,使用php bin/console events:createSitemap
在项目的web
文件夹中创建一个sitemap-events.xml
文件。您可以使用crontab每天生成它。您可以将此文件添加到sitemap-index.xml
中,以分组所有网站地图,或者如果只有一个,则直接使用它。
如果这个项目帮助您减少开发时间,您可以通过顶部“赞助”按钮赞助我:)