numero2 / contao-churchdesk
从 ChurchDesk 导入新闻和事件到 Contao
1.0.0
2024-01-25 07:27 UTC
Requires
- contao/calendar-bundle: ^4.13
- contao/core-bundle: ^4.13
- contao/news-bundle: ^4.13
Requires (Dev)
- contao/manager-plugin: ^2.0
Conflicts
- contao/core: *
- contao/manager-plugin: <2.0 || >=3.0
This package is auto-updated.
Last update: 2024-08-29 13:20:21 UTC
README
关于
将 ChurchDesk 中的新闻和事件导入 Contao 作为新闻。
系统需求
- Contao 4.13(或更高版本)
安装
- 通过 Contao Manager 或 Composer 安装(
composer require numero2/contao-churchdesk
) - 通过 Contao-Installtool 或使用 contao:migrate 命令运行数据库更新。
配置
- 在
config.yaml
中输入凭据church_desk: api: organization_id: 123 partner_token: 'abc'
- 配置事件日历和或新闻存档
钩子
默认情况下,该组件仅从 ChurchDesk 导入某些信息。如果您需要更多数据,您可以使用 parseChurchDeskEntry
钩子自行导入。
// src/EventListener/ParseChurchDeskEntryListener.php namespace App\EventListener; use Contao\CoreBundle\ServiceAnnotation\Hook; use Contao\Model; use Contao\NewsModel; use Contao\CalendarEventsModel; /** * @Hook("parseChurchDeskEntry") */ class ParseChurchDeskEntryListener { public function __invoke( Model $model, array $apiData, bool $isUpdate ): void { if( $model instanceof CalendarEventsModel ) { $model->something = $apiData->something; } if( $model instanceof NewsModel ) { $model->anything = $apiData->anything; } } }
控制台命令
可以通过命令 vendor/bin/contao-console contao:churchdesk:import
启动所有事件和博客条目的自动导入。