[TYPO3-german] tx_solr Facets: Filtern nach Seitentyp
Alla Barabash
alla.barabash at explicatis.com
Sat Dec 24 12:02:06 CET 2016
Hallo,
ich muss nach "benutzerdefinierten" Seitentypen filtern, die ich im plugin.tx_solr.queue provisorisch definiert habe:
queue {
// mapping tableName.fields.SolrFieldName => TableFieldName (+ cObj processing)
pages = 1
pages {
initialization = ApacheSolrForTypo3\Solr\IndexQueue\Initializer\Page
// allowed page types (doktype) when indexing records from table "pages"
allowedPageTypes = 1, 4, 100, 101, 102, 103, 104, 105, 106, 107, 108, 110, 111, 112, 113, 114
indexingPriority = 0
no_search = 0
indexer = ApacheSolrForTypo3\Solr\IndexQueue\PageIndexer
indexer {
// add options for the indexer here
}
// Only index standard pages and mount points that are not overlayed.
// additionalWhereClause = (doktype = 1 OR doktype=4 OR (doktype=7 AND mount_pid_ol=0)) AND no_search = 0
//exclude some html parts inside TYPO3SEARCH markers by classname (comma list)
excludeContentByClass = typo3-search-exclude
fields {
sortSubTitle_stringS = subtitle
category_stringM = SOLR_RELATION
category_stringM {
localField = categories
foreignLabelField = uid
multiValue = 1
}
doktype_stringS = doktype
}
}
news = 1
news {
table = tx_news_domain_model_news
fields {
abstract = teaser
author = author
authorEmail_stringS = author_email
title = title
content = SOLR_CONTENT
content {
cObject = COA
cObject {
10 = TEXT
10 {
field = bodytext
noTrimWrap = || |
}
}
}
keywords = SOLR_MULTIVALUE
keywords {
field = keywords
}
tags_stringM = SOLR_RELATION
tags_stringM {
localField = tags
multiValue = 1
}
url = TEXT
url {
typolink.parameter = 134
typolink.additionalParams = &tx_news_pi1[controller]=News&
tx_news_pi1[action]= detail&tx_news_pi1[news]={field:uid}
typolink.additionalParams.insertData = 1
typolink.useCacheHash = 1
typolink.returnLast = url
}
}
attachments {
fields = related_files
}
}
themenseiten = 1
themenseiten {
table = pages
additionalWhereClause = doktype IN(100, 101, 106, 107, 108)
fields {
abstract = teaser
author = author
authorEmail_stringS = author_email
title = title
}
}
aktuelles = 1
aktuelles {
table = pages
allowedPageTypes = 105
additionalWhereClause =
}
}
in plugin.tx_solr.search habe ich die "facetten" aufgelistet:
faceting = 1
faceting {
minimumCount = 1
sortBy = count
limit = 10
singleFacetMode = 1
showEmptyFacets = 1
keepAllFacetsOnSelection = 1
facetLinkATagParams = rel="nofollow"
facetLinkUrlParameters =
facets {
type {
label = Inhaltstyp
renderingInstruction = CASE
renderingInstruction {
key.field = optionValue
pages = TEXT
pages.value = Pages
pages.lang.de = Seiten
news = TEXT
news.value = News
news.lang.de = Nachrichten
themenseiten = TEXT
themenseiten.value = Themes
themenseiten.lang.de = Themenseiten
aktuelles = TEXT
aktuelles .value = Up to Date
aktuelles .lang.de = Aktuelles
}
}
Nun habe ich einen Fehler auf dem Server
org.apache.solr.common.SolrException: undefined field: ""
at org.apache.solr.schema.IndexSchema.getField(IndexSchema.java:1177)
weil natürlich das Feld aus dem Schema nach dem wir filtern, fehlt.
Nur ich habe ganz viele Beispiele im Internet gesehen, wo eben das Feld nicht benötigt wird , weil wir die "Seitentypen" eben selbst definieren und die sind im Schema nicht festgelegt.
Hat jemand denselben Fehler gehabt? Oder habe ich etwas vergessen?
Vielen Dank und viele Grüße
Alla
More information about the TYPO3-german
mailing list