storychief/craft-cms-v3-storychief

Craft CMS 插件,与 Storychief 一起使用

2.0.0 2023-01-11 09:46 UTC

README

Craft CMS 插件,用于与 StoryChief 一起使用。

要求

此插件需要 Craft CMS 3.0.0 或更高版本。(如果您正在使用 Craft CMS 2.x,您可以在这里找到正确的插件。)

安装

您可以从插件商店或使用 Composer 安装此插件。

从插件商店

前往项目的控制面板中的插件商店,搜索“Storychief”,然后在模态窗口中点击“安装”按钮。

使用 Composer

打开您的终端,运行以下命令

# go to the project directory
cd /path/to/my-project.test

# tell Composer to load the plugin
composer require storychief/craft-cms-v3-storychief

# tell Craft to install the plugin
./craft install/plugin storychief-v3

激活

要激活插件,您首先需要在 StoryChief 管理面板上设置一个新的 Craft CMS 频道。一旦创建,它将为您提供 加密密钥

在您的 CRAFT CMS 中,转到设置/插件并激活您的 StoryChief 插件。转到其设置并填写加密密钥和网站 URL。

保存。

最后,回到您的 StoryChief CRAFT CMS 频道配置,填写您的 CRAFT CMS 网站URL并保存

:)

事件

注意:这主要针对了解基本 PHP 和 Composer 包的开发者。

beforeEntryPublishbeforeEntryUpdate 事件

这允许开发者在保存新条目或更新条目之前执行自定义功能,以修改新条目的数据。

use storychief\storychiefv3\events\EntryPublishEvent;

$this->on('beforeEntryPublish', function (EntryPublishEvent $event) {
    $payload = $event->payload;
    $settings = $event->settings;
    $entry = $event->entry;
    
    // Example 1:
    $entry->sectionId = 2; // BLog
    $entry->typeId = 2;
    
    // Example 2:
    if ($payload['data']['custom_fields']) {
        foreach ($payload['data']['custom_fields'] as $customField) {
            if ($customField['key'] === 'custom_field_name') {                
                $entry->sectionId = $customField['value'];
                $entry->typeId = 2;
            }
        }
    }
});

use storychief\storychiefv3\events\EntryUpdateEvent;

$this->on('beforeEntryUpdate', function (EntryUpdateEvent $event) {
    // ...
});

afterEntryPublish 事件

这允许开发者在 Storychief 推送到 Craft 的新条目被保存后执行自定义功能。

afterEntryUpdate 事件

这允许开发者在 Storychief 推送到 Craft 的条目更新后执行自定义功能。

这两个事件都会发送一个包含已保存 Entry 对象的属性的 EntrySaveEvent

StoryChief 提供