fitzage / optimus-bard
此包最新版本(v1.1)没有可用的许可信息。
Optimus Bard 会从 Statamic Bard 字段获取内容,并在更新搜索索引时将其转换为字符串
v1.1
2022-04-26 16:25 UTC
Requires
- php: >=7.4
This package is auto-updated.
Last update: 2024-09-26 21:26:12 UTC
README
Optimus Bard 会从 Statamic Bard 字段获取内容,并在更新搜索索引时将其转换为字符串
重要提示
此插件目前仅适用于具有至少一个集定义的 bard 字段。
功能
此插件的功能
- 从搜索转换器接收 Bard 字段
- 将 Bard 字段中所有文本块合并成一个字符串,包括用户定义的列表中的文本集
- 对生成的字符串进行一些有见地的清理
- 将字符串返回到搜索转换器,替换搜索索引中的 Bard 字段
如何安装
您可以在 Statamic 控制面板的“工具 > 插件”部分搜索此插件并点击“安装”,或者从项目根目录运行以下命令
composer require fitzage/optimus-bard
如何使用
使用Statamic 搜索文档配置您的搜索索引。
在 config/statamic/search.php
中,在 <?php
行下方添加以下内容
use Fitzage\OptimusBard\TransformBard;
在 config/statamic/search.php
中,根据Statamic 文档将转换器添加到您的搜索索引中。
向转换器发送三个必需参数和一个可选参数
- 字段本身。这作为变量传递给初始转换器函数,然后将其传递给 TransformBard 作为第一个参数。
- 包含该字段定义的蓝图路径,即
collections/blog/article
。 - 蓝图中的字段名称,这将与您正在转换的字段名称相同。
- 可选:包含要包含在字符串中的除标准文本类型之外的 Bard 集类型数组的数组。如果您在 Bard 字段中有包含要索引的信息的自定义集,则此功能很有用。
转换器的内容应如下所示,包括可选数组
'field_name' => function ($field_name) { return TransformBard::transform($field_name, 'blueprint/path', 'field_name', ['set_type_1', 'set_type_2']); },
您的索引配置现在将类似于以下内容
'blog' => [ 'driver' => 'algolia', 'searchables' => 'collection:blog', 'fields' => ['title','description','body'], 'transformers' => [ 'body' => function ($body) { return TransformBard::transform($body, 'collections/blog/article', 'body', ['columns', 'info_block']); }, ] ],
致谢
特别感谢Erin Dalzell 分享了启动我的代码,并提供了额外的帮助,包括帮助我为我的插件想出一个创意名称。