This section describes the configuration of the search functionality of the Brand Blueprint website.
Configuring search in content settings
Some aspects of website search are configurable in a site-specific Settings document. The site's
root channel links to the Settings document SearchConfiguration
with the
settings used for that site.
It contains the following settings:
Settings Property | Description |
---|---|
searchChannel |
The channel used to render the search result page. |
searchAction |
Content of type CMAction with ID "search". |
search.result.hitsPerPage |
The number of hits shown on the search result page. |
search.doctypeselect |
The content types that appear in the search result. Subtypes must be listed explicitly. |
caefeederSiteConfiguration |
Contains the value |
Table 7.1. Brand website search settings
Configuring page grid indexing
The Brand Blueprint CAE Feeder feeds CMChannel documents to the search engine so that pages can be found on the website. To this end, the CAE Feeder configuration specifies which parts of a page grid need to be indexed. This includes the configuration of relevant page grid sections, content types of linked contents and their properties.
Note | |
---|---|
Read section Section 6.3.4, “Page Assembly” for an introduction to page grids. |
The Brand Blueprint CAE Feeder is configured in the Spring bean
definition file component-corporate-caefeeder.xml
and its accompanied
properties file corporate-caefeeder.properties
in directory
src/main/resources/META-INF/coremedia
of the Blueprint module
modules/extensions/corporate/corporate-caefeeder-component
. The Spring XML
file imports the content bean definitions and defines the following
FeedablePopulators
to index the page grid:
The PageGridFeedablePopulator
takes properties from content linked in the page grid
and adds them to the textbody
index field when feeding a CMChannel
. It
is configured to feed the teaser properties of linked documents except for articles linked with
view type "Detail" in which case the full article text is indexed with the channel. The
PageGridInlineContentFeedablePopulator
ensures that articles that are linked with
view type "Detail" are not returned by the website search in addition to their page. To this
end, it sets the index field notsearchable
to true
for such articles.
If a page grid placement contains a CMCollection
document, then the contents linked
in its items
property are included as well - just as if they were linked directly
in the page grid.
The mentioned FeedablePopulators are only used for documents if their site has a settings
document that defines the setting caefeederSiteConfiguration
with value
corporate
. This is the case for Brand Blueprint sites. The Spring application
context file component-corporate-caefeeder.xml
configures the site-specific
activation of page grid feeding by adding the FeedablePopulators to the bean
siteSpecificFeedablePopulatorMap
for the value corporate
.
The Brand Blueprint comes with a default configuration for indexing page grids of
CMChannel
documents. If needed, you can change the configuration in
component-corporate-caefeeder.xml
and
corporate-caefeeder.properties
. The following table describes the used
Spring properties. All properties start with the prefix corporate.search.pageGrid
which is abbreviated with [c.s.p]
below.
Property | Description |
---|---|
[c.s.p].contentType |
The type of the contents with indexed page grid.
Default: |
[c.s.p].name |
The name of the struct property that contains the page grid.
Default: |
[c.s.p].excludedSections |
Comma-separated list of ignored page grid sections.
Default: |
[c.s.p].itemContentTypes |
Comma-separated list of content types of considered page grid items. Contents of other types that are linked in the page grid are ignored and not indexed with the page grid.
Default: |
[c.s.p].itemTextProperties |
The content properties of page grid items with a view type other than "Detail" that
are indexed in the index field
Default: |
[c.s.p].itemValidFromProperty [c.s.p].itemValidToProperty |
The name of the date properties for visibility as described in Section 6.3.17, “Content Visibility”. Content that is not currently visible is not indexed with the page. The CAE Feeder automatically reindexes after visibility has changed.
Default: |
[c.s.p].inlineContentTypes |
Comma-separated list of content types used in the page grid with view type "Detail" for which the text properties are indexed with the page grid instead of the teaser properties.
Default: |
[c.s.p].inlineContentViewType |
The technical name of the "Detail" view type.
Default: |
[c.s.p].inlineContentTextProperties |
The content properties of page grid items with view type "Detail" that are indexed in
the index field
Default: |
[c.s.p].collectionContentType |
The content type of collection documents used in the page grid.
Default: |
[c.s.p].collectionItemsProperty |
The link property of collection documents to get the items of a collection.
Default: |
[c.s.p].collectionViewTypeProperty |
The link property of collection documents to get the view type for the items of a collection.
Default: |
[c.s.p].configId |
An identifier that represents the configuration options.
Default: |
Table 7.2. Page Grid Indexing Spring Properties
Note | |
---|---|
Note that you must reindex from scratch with empty CAE Feeder
database to apply the changes of the above configuration properties to all indexed documents.
If it is okay to just apply the changes to newly indexed documents and if you don't reindex
with empty CAE Feeder database, then you need to change the value
of the |