首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Craft CMS中从多个指定字段中搜索搜索查询值?

如何在Craft CMS中从多个指定字段中搜索搜索查询值?
EN

Stack Overflow用户
提问于 2020-02-12 14:39:17
回答 2查看 1.5K关注 0票数 2

在Craft CMS中,我只想搜索某些字段/多个字段的搜索查询值-而不是所有字段。例如限制到字段title、introduction、cardContent。

我向我的queryEntry对象添加了一个search:属性,其值为title和查询字符串。但我想添加更多字段。

代码语言:javascript
复制
{% set searchQuery = craft.app.request.getParam('q') %}
{# {% set queryEntries = craft.entries({
    section: queryFilters
}).search(searchQuery) %} #}


{% set queryEntries = craft.entries({
        search: 'title:' ~ searchQuery,
        order: 'score'
}) %}
EN

回答 2

Stack Overflow用户

发布于 2020-02-13 07:40:38

代码语言:javascript
复制
{% if craft.app.request.getParam('q') %}
    {% set searchQuery = '"' ~ craft.app.request.getParam('q') ~ '"' %}
    {% set queryEntries = craft.entries({
            search: 'title:' ~ searchQuery ~ ' OR cardContent:' ~ searchQuery ~ ' OR introduction:' ~ searchQuery ,
            order: 'score'
}) %}
{% endif %}

  • Get

query string

  • add searchTerms使用OR和query
  • 将字符串连接在一起,这将返回与queryEntries.search匹配的条目数组,您可以根据自己的喜好执行此操作-例如,循环遍历

display results

票数 0
EN

Stack Overflow用户

发布于 2020-12-15 00:02:43

您可以将任意数量的字段与变量中的值连接在一起,然后可以简单地将其传递到带有条目的搜索参数查询中。下面是示例代码。

代码语言:javascript
复制
{% set nameparam = craft.app.request.getParam('data') %}
{% set categoryparam = craft.app.request.getParam('data1') %}

{% set queryString = '' %}

{% if nameparam is defined and nameparam is not empty %}
        {% set queryString = queryString ~ 'title:*'~nameparam~'* ' %}        
{% endif %}

{% if categoryparam is defined and categoryparam is not empty %}
    {% set queryString = queryString ~ 'blogCategory:'~categoryparam~' ' %}
{% endif %}

{% if queryString is defined and queryString is not empty %}
    {% set queryParams = {
        search: {
            query: queryString,
            order: 'score'
        },
    } %}
{% else %}
    {% set queryParams = {} %}
{% endif %}

{% set queryEntries = craft.entries(queryParams) %}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60182486

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档