mustasj / expanded-search
扩展Crafts搜索
1.3.7
2020-08-03 11:42 UTC
Requires
- craftcms/cms: ^3.1.0
This package is auto-updated.
Last update: 2024-09-29 05:08:47 UTC
README
从Craft 2迁移到Craft 3的https://github.com/composedcreative/craft-expandedsearch。这是一个扩展Crafts搜索的插件,它为您提供了搜索结果的上下文。
需求
此插件需要Craft CMS 3.1.0或更高版本。
安装
要安装插件,请按照以下说明操作。
-
打开您的终端并进入您的Craft项目
cd /path/to/project
-
然后告诉Composer加载插件
composer require mustasj/expanded-search
-
在控制面板中,转到设置 → 插件,然后点击Expanded Search的“安装”按钮。
使用Expanded Search
第一个参数是搜索词。它将被自动加盐:*{term}*
第二个是设置。
在您的搜索结果模板中
{% set expandedResults = craft.expandedSearch.search(query) %}
{% set expandedResults = craft.expandedSearch.search(query, { sections: ['news'], length: 150 }) %}
{% for result in expandedResults %}
<strong data-field="{{result.matchedField}}">{{result.entry.title}}</strong><br>
<p>{{result.matchedValue}}</p>
<a href="{{result.entry.url}}">{{result.entry.url}}</a>
{% else %}
<p>Sorry, no results for {{query}}.</p>
{% endfor %}
来自Element API的Expanded Search
要从ElementAPI使用插件。进行正常搜索,然后对于每个结果,您可以从服务中获取ExpandedSearchModel
。
'transformer' => function(Entry $entry) {
$searchResults = ExpandedSearch::$plugin->expandedSearchService->expandSearchResults($entry, $query, $length);
return [
'id' => $entry->title,
'title' => $entry->title,
'matchedValue' => $searchResult->matchedValue,
'matchedField' => $searchResult->matchedField
];
},
Expanded Search路线图
一些要完成的事情和潜在功能的想法
-
发布它 -
在插件中添加适当的分页 - 添加更多字段的处理