簡體   English   中英

“plugin.tx_solr.query.fields”是如何工作的?

[英]How does "plugin.tx_solr.query.fields " work?

我需要能夠通過新聞標簽屬性進行搜索。

這個拼寫錯誤工作正常,但是當我將新聞中的標簽(完全相同的字符串)輸入到 Solr 的搜索框中時,我沒有得到任何結果。

根據這個答案中的“lorenz”,我需要將我的動態字段(我相信)添加到“plugin.tx_solr.query.fields”,但是這個糟糕的文檔對我沒有幫助。

我在該拼寫錯誤中添加了以下內容,但是當我使用搜索框准確查找我的標簽名稱時,我沒有得到任何結果。

(plugin.tx_solr.query.fields = tags_stringM)

有人有任何代碼可以用作示例嗎?

plugin.tx_solr{
    search {
        initializeWithEmptyQuery = 1
        showResultsOfInitialEmptyQuery = 1
        showEmptyFacets = 1
        faceting = 1
        faceting {
            facets {
                mediatype {
                    label = Facet dos
                    field = categorytitle_stringS
                }
            }
        }
    }
    index.queue {

        custom_news = 1
        custom_news {
            table = tx_news_domain_model_news

            fields {
                abstract = teaser

                author = author
                authorEmail_stringS = author_email

                title = title

                datetime_stringS = TEXT
                datetime_stringS {
                    field = datetime
                    date = d.m.Y H:i
                }

                titlehr_stringS = TEXT
                titlehr_stringS {
                    field = title_hr
                }

                teaser_stringS = TEXT
                teaser_stringS {
                    field = teaser
                }
                
                datetime_dateS = TEXT
                datetime_dateS {
                    field = datetime
                    date = Y-m-d\TH:i:s\Z
                }

                content = SOLR_CONTENT
                content {
                    cObject = COA
                    cObject {
                        10 = TEXT
                        10 {
                            field = bodytext
                            noTrimWrap = || |
                        }
                        20 = TEXT
                        20 {
                            field = tags_stringM
                            noTrimWrap = || |
                        }
                    }
                }

                categorytitle_stringS = SOLR_RELATION
                categorytitle_stringS {
                    localField = categories
                    multiValue = 1
                }

                categoryuid_stringS = SOLR_RELATION
                categoryuid_stringS {
                    localField = categories
                    foreignLabelField = uid
                    multiValue = 1
                }
                
                keywords = SOLR_MULTIVALUE
                keywords {
                    field = keywords
                }

                tags_stringM = SOLR_RELATION
                tags_stringM {
                    localField = tags
                    label = Tags
                    multiValue = 1
                }

                tagshr_stringM = SOLR_RELATION
                tagshr_stringM {
                    localField = tags
                    label = Tags hr
                    foreignLabelField = title_hr
                    multiValue = 1
                }

                mediatypehr_intS = TEXT
                mediatypehr_intS {
                    field = media_type_hr
                }

                mediatypede_intS = TEXT
                mediatypede_intS {
                    field = media_type_de
                }

                image_stringS = FILES
                image_stringS {
                    references {
                        table = tx_news_domain_model_news
                        uid.field = uid
                        fieldName = fal_media
                    }

                    begin = 0
                    maxItems = 1

                    renderObj = IMG_RESOURCE
                    renderObj {
                        file.import.data = file:current:publicUrl
                        file.maxW = 330
                        #wrap = |
                    }
                }

                url = CASE
                url {
                    key.field = type

                    # Internal
                    1 = TEXT
                    1 {
                        if.isTrue.field = internalurl
                        typolink.parameter.field = internalurl
                        typolink.useCacheHash = 1
                        typolink.returnLast = url
                    }

                    # External
                    2 = TEXT
                    2 {
                        if.isTrue.field = externalurl
                        field = externalurl
                    }

                    default = TEXT
                    default {
                        typolink.parameter = {$plugin.tx_news.settings.detailPid}
                        typolink.additionalParams = &tx_news_pi1[controller]=News&tx_news_pi1[action]=detail&tx_news_pi1[news]={field:uid}&L={field:__solr_index_language}
                        typolink.additionalParams.insertData = 1
                        typolink.useCacheHash = 1
                        typolink.returnLast = url
                    }
                }
            }

            attachments = 1
            attachments {
                fields = fal_related_files
                fileExtensions = *
            }
        }
    }
}

plugin.tx_solr.logging.indexing.queue.news = 1

除了定義用於索引的字段之外,您還需要將這些字段聲明為與搜索相關。 (以及它們對搜索的重要性)

一種可能的解決方案可能類似於這部分打字稿:

plugin {
   tx_solr {
      search {
         query {
            queryFields := addToList(categorytitle_stringS^2.0,keywords2.0,tags_stringM^2.0, tagshr_stringM^2.0)
         }
      }
   }
}

手冊

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM