Configuring Search Forms configuring-search-forms
Adobe Experience Manager as a Cloud Service comes with a powerful Search mechanism.
In combination with this there are a also set of predefined options to help you to filter your content. These hold predefined facets such as Modified Date, Publish Status, or Livecopy Status to help you quickly drill down to the resources you need.
Together these aim to help you locate your content quickly and easily from:
- Search and Filter
- Rail Selector
- the Assets Browser (when editing pages)
Using Search Forms, you can customize, and extend, these panels, according to your specific needs.
The Search Forms provide an out-of-the-box selection of predicates that you can combine and define. The dialogs for configuring these forms can be accessed via:
- Tools
- General
- Search Forms
- General
Default Forms default-forms
When you first access the Search Forms console you can see that all the configurations have a padlock symbol. This indicates that the corresponding configuration is the default (out-of-the-box) configuration - and cannot be deleted. Once you have customized, and saved, a configuration the lock will disappear. It will reappear when you delete your customized configuration, in which case the default (and the padlock indicator) is reinstated.
The default configurations (listed alphabetically) available are:
- Assets Admin Search Rail
- Page Editor (Documents search)
- Page Editor (Experience Fragments Search)
- Page Editor (Image search)
- Page Editor (Manuscript search)
- Page Editor (Page search)
- Page Editor (Paragraphs search)
- Page Editor (Product search)
- Page Editor (Scene7 search)
- Page Editor (Video search)
- Project Admin Search Rail
- Project Translation Search Rail
- Sites Admin Search Rail
- Snippets Admin Search Rail
- Stock Admin Search Rail
- Content Fragment Models Search Rail
- Project Admin Search Rail
- Project Translation Search Rail
Predicates and Their Settings predicates-and-their-settings
Predicates predicates
The following predicates are available, dependent on the configuration:
/libs/cq/gui/components/common/admin/customsearch/searchpredicates
/libs
.Predicate Settings predicate-settings
Dependent on the predicate a selection of settings are available for configuration, including:
-
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 necessary).
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 mandatory 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, General, 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. Your changes can be seen next time the configuration is used.
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 opens and shows 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. Your changes can be seen next time the configuration is used.
Previewing the Search Configuration previewing-the-search-configuration
-
Select the Preview icon:
-
Displays the search forms as they are 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 is 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 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 select Edit.
-
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 - Filters rail. The newly defined search forms, together with the various options are 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.
/apps
node./apps
node/var/dam/content
node.Read, Write permissions on the
/apps
node.