Search in Magnolia
Searching for content in Magnolia is done using the Find Bar UI or the chooser dialogs within the applications.
At the heart of the Magnolia UI, the Find Bar offers powerful search across all your content. It searches and adapts the results in real time as you type, as well as it offers full-text search and precise filters for you to make the most of your content. You can plug in any REST-compliant data source to be able to search through content that is not stored in Magnolia too.
The Find Bar allows you to search across all content search inside and outside Magnolia (federated search, enterprise search). The search covers all Magnolia and custom-content apps, assets and pages. Developers can integrate external datasets using the API.
Start typing in the Find Bar to see search results appear in real time based on the keywords you typed in. Results are pre-sorted by the app as well as by the type of content (e.g. app, page, asset or tour).
Use the Up and Down arrow keys to move through search results. Press Enter to open the highlighted result.
The Find Bar automatically recognizes any command you type in. For example, if you want to open the pages app, type
open pages app in the Find Bar. To execute, press Enter.
Other useful commands are
find (app name) about (content) to find a specific content within an app, and
find (node)(app name) to find the app where a certain node is.
You can also use the Find Bar to search for a specific path. This allows you to reach a target node more quickly than by checking an app’s node tree or by browsing search results supplied for a less specific keyword or phrase.
You can configure how many characters are needed for search to start showing results - by default you need at least three characters, as well as the maximum number of search results displayed, which is set to 10 results by default.
Below you can see an example with 10 search results limit on the left, and maximum 3 search results on the right.
For more on the Find Bar configuration, head over here.
Full-text search is possible in chooser dialogs of apps that use the JCR data source:
Search results are by default ranked according to the best match. For example, if you search for “Basel” and there is an asset called “Basel.png”, this result would have a higher ranking than if you had searched for “Photos of Basel”.
To get relevant results faster, rank them based on the user activity with User Result Ranker module.
The User Result Ranker module is bundled with Magnolia DxCore from version 6.2.39 onwards. To add it to an earlier version, please follow the installation instructions in the module page.
The ranking of search results is prioritized by the Latest Used content. If not found, the results are ranked by Most Used content. If that’s not available either, the system will look into collaboration between users, recommendations, which means that it will look at usage/results from other users in your User Group (e.g. editors) and recommend results based on other users belonging to that same User Group.
The layers considered in this ranking in terms of priority are:
Last Used (Recency) - ranks results based on the most recently clicked content. If you searched the keyword Swiss in the past and picked Swiss-flag at that time, Swiss-flag will be displayed at the top of the result list next time you repeat the search.
Most Used (Frequency) - ranks results based on the most frequently used content. If in the past you chose Swiss-cheese several times, then you’ll see this result at the top of the page when using the keyword Swiss.
User-Group-based (Collaborative) - results ranked based on the recommendations of users in the same group. If other similar editors have chosen Swiss-watch, that’s the result you’ll see at the top of the page when searching for Swiss for the first time.