Configuring Search Forms configuring-search-forms
Use Search Forms to customize the selection of search predicates used in the search panels available in various AEM consoles and/or panels of the author environment. Customizing these panels makes the search functionality versatile according your specific needs.
A range of predicates are available out-of-the-box. You can add multiple predicates, including (amongst others) the Property predicate to search for assets that match a single property specified by you, or the Options predicate to search assets that match one or more values that you specify for a particular property.
You can configure the search forms used within various consoles and the asset browser (when editing pages). The dialogs for configuring these forms can be accessed via:
-
Tools
-
General
- Search Forms
-
When you first access this console you can see that all the configurations have a padlock symbol. This indicates that the appropriate configuration is the default (out-of-the-box) configuration - and cannot be deleted. Once you have customized the configuration the lock will disappear - unless you delete your customized configuration, in which case the default (and the padlock indicator) will be reinstated.
Configurations configurations
The default configurations available are:
-
Page Editor (Documents search):
This configuration defines the options available when searching for document in the assets browser (when editing a page).
-
Page Editor (Image search):
This configuration defines the options available when searching for images in the assets browser (when editing a page).
-
Page Editor (Manuscript search):
This configuration defines the options available when searching for manuscripts in the assets browser (when editing a page).
-
Page Editor (Page search):
This configuration defines the options available when searching for pages in the assets browser (when editing a page).
-
Page Editor (Paragraphs search):
This configuration defines the options available when searching for paragraphs in the assets browser (when editing a page).
-
Page Editor (Product search):
This configuration defines the options available when searching for products in the assets browser (when editing a page).
-
Page Editor (Dynamic Media Classic [formerly Scene7] search):
This configuration defines the options available when searching for Dynamic Media Classic resources in the assets browser (when editing a page).
-
Sites Admin Search Rail:
This configuration defines the search options available to the user when using the search rail of the Sites console.
-
Page Editor (Video search):
This configuration defines the options available when searching for videos in the assets browser (when editing a page).
-
Assets Admin Search Rail:
This configuration defines the search options available to the user when using the Assets console.
-
Catalogs Admin Search Rail:
This configuration defines the search options available to the user when searching a commerce catalog.
-
Orders Admin Search Rail:
This configuration defines the search options available to the user when searching commerce orders.
-
Product Collections Admin Search Rail:
This configuration defines the search options available to the user when searching commerce product collections.
-
Products Admin Search Rail:
This configuration defines the search options available to the user when searching commerce products.
-
Project Admin Search Rail:
This configuration defines the search options available to the user when searching projects.
Predicates and Their Settings predicates-and-their-settings
Predicates predicates
The following predicates are available, dependent on the configuration:
-
The common search predicates are defined in:
/libs/cq/gui/components/common/admin/customsearch/searchpredicates
-
Search predicates related only to siteadmin (classic UI) are located under:
/libs/cq/gui/components/siteadmin/admin/searchpanel/searchpredicates
- These are deprecated and only available for backward compatibility.
/libs
.Predicate Settings predicate-settings
Dependent on the predicate a selection of settings are available for configuration:
-
Field Label
The label that will appear as the collapsible header or as the field label of the predicate.
-
Description
Descriptive details for the user.
-
Placeholder
Empty text or the place holder of the predicate in case no filtering text is entered.
-
Property Name
The property to be searched on. It uses a relative path and the wildcards
*/*/*
specify the depth of the property relative to thejcr:content
node (each asterisk represents one node level).If you want to search only on a first level child node of the resource that has the
x
property on thejcr:content
node use*/jcr:content/x
-
Property Depth
The maximum depth to search for that property within the resources. So a search on that property can be performed on a resource and recursive children until the level of the children equals specified depth.
-
Property Value
The property value as an absolute string or as an expression language; for example,
cq:Page
or${empty requestPathInfo.suffix ? "/content" : requestPathInfo.suffix}
. -
Range Text
The label of the range field in the Date Range predicate.
-
Option Path
The user can select the path using the Path Browser in the predicate setting tab. After selecting the + icon is used to add the selection to the list of valid options (then the - icon to remove if required).
The options are content nodes created by the user, having the following structure:
(jcr:primaryType = nt:unstructured, value (String), jcr:title (String))
-
Options node path
Effectively the same as the Options Path, only this is in the common predicate field, the other is specific for assets. -
Single Select
If checked, the options are rendered as checkboxes that allow for only a single selection. If mistakenly selected, a checkbox can be deselected. -
Publish and Live Copy Property Name(s)
The labels for the publish and live copy checkboxes for the Sites specific predicate. -
The * on the field labels in the Settings tab means the fields are required and if left blank an error message will appear
Configuring Your Search Forms configuring-your-search-forms
Creating/Opening a Customized Configuration creating-opening-a-customized-configuration
-
Navigate to Tools, Operations, Search Forms.
-
Select the configuration that you want to customize.
-
Use the Edit icon to open the configuration for updating.
-
If a new customization you will probably want to add new predicate fields and define the settings as required. If an existing customization you can select an existing field and update the settings.
-
Select Done to save the configuration.
note note NOTE The customized configurations are stored (as appropriate) under: /apps/cq/gui/content/facets/<option>
/apps/commerce/gui/content/facets/<option>
Add/Edit a Predicate Field and Define Field Settings add-edit-a-predicate-field-and-define-field-settings
You can add or edit fields and define/update their settings:
-
Open the customized configuration for updating.
-
If you want to add a new field, open the Select Predicate tab and drag the required predicate to the required location. For example, the Date Range Predicate:
-
Depending on whether:
-
You are adding a new field:
After adding the predicate the Settings tab will open and show the properties that can be defined.
-
You want to update an existing predicate:
Select the predicate field (on the right), then open the Settings tab.
For example, the settings for the Date Range Predicate:
-
-
Make your changes as required and confirm with Done.
Previewing the Search Configuration previewing-the-search-configuration
-
Select the Preview icon:
-
This will display the search forms as they will be shown (fully expanded) in the Search column of the appropriate console.
-
Close the preview to return and finish the configuration.
Deleting a Predicate Field deleting-a-predicate-field
-
Open the customized configuration for updating.
-
Select the predicate field (on the right), open the Settings tab and then select the Delete icon (bottom left).
-
A dialog will request confirmation of the delete action.
-
Confirm this and any other changes with Done.
Deleting a Configuration (to Reinstate the Default) deleting-a-configuration-to-reinstate-the-default
Once you have customized a configuration this will override the defaults. You can resinstate the default configuration by deleting your customized configuration.
Deleting a customized configuration is done from the console:
-
Select the required configuration (for example, Page Editor (Paragraphs search)) and then the Delete icon in the toolbar:
-
The customized configuration will be deleted and the default reinstated (this is indicated by the reappearance of the padlock symbol in the console).
Adding Options Predicates adding-options-predicates
Option predicates (Options, Options Property) allow you to configure an item to be searched for. They are usually used to search for something directly under the page; for example, a property on the page node.
The following example (to search according to the template used to create a page), illustrates the steps involved:
-
Create the node defining the property to be searched on.
You will need a root node holding definitions of the individual options to be available to the user.
The nodes for the individual options need the properties:
jcr:title
- the field label to be shown in the search railvalue
- the property value to be searched on
note note NOTE You must not change anything in the /libs
path.This is because the content of /libs
is overwritten the next time you upgrade your instance (and may well be overwritten when you apply either a hotfix or feature pack).The recommended method for configuration and other changes is: - Recreate the required item, as it exists in
/libs
, under/apps
. In this case from: /libs/cq/gui/content/common/options/predicates
- Make any changes within
/apps.
-
Open the Search Forms console and select the configuration you want to update. For example, Sites Admin Search Rail.
Then click/tap the Edit search forms icon.
-
Depending on the configuration add an Options or Options Property to the configuration.
-
Update the fields, in particular:
-
Property Name
Specific the node property to be searched for on the target nodes. For example:
jcr:content/cq:template
-
Option node path
Select the path to where your options are held. For example:
/apps/cq/gui/content/common/options/predicates/templatetype
-
-
Select Done to save your configuration.
-
Navigate to the appropriate console (in this example, Sites) and open the Search rail. The newly defined search forms, together with the various options will be visible. Select the required option to see the search results:
User Permissions user-permissions
The following table lists the permissions required to perform edit, delete, and preview actions on search forms.