Introduction
You can take advantage of advanced filters to look for courses in internal and external catalogs, and in the My courses and learning plans page, by clicking on Filters at the top of the courses list and in the Course catalogs tab of the global search by clicking on Filters, on top of the search results list.
This article lists the available advanced filters and provides information on how to configure them and send deeplinks to share your filtered results.
Enrollment status
When this filter is selected, the search results will only include the courses the user is not enrolled in.
The Enrollment status filter is available for internal catalogs, the Catalogs widget and the Course catalogs tab of the global search.
Content partners
This filter is available only if the Content partner app is active in your platform, and allows you to select one or more content partners, so only the courses assigned to the selected partners will be shown as search results.
The Content partners filter is available for internal and external catalogs, on the My courses and learning plans page, in the Catalogs and Courses and learning plans widgets and in the global search (My courses and learning plans, Training material and Course catalogs tabs).
Duration
This filter is displayed only when at least one of the courses resulting from the search has a course duration set in the Details section of the course properties, Average time option. Use this filter to look for courses according to their average time for completion.
When the Custom duration option is selected, use the bar shown underneath the filter to select the duration you are interested in. The Duration filter is available for internal and external catalogs, the Catalogs widget and the Course catalogs tab of the global search.
Additional fields
This filter allows you to filter courses according to the additional fields defined for learning plans, courses and sessions configured to be used as filters. Up to 50 additional filters are available per page, but pay attention to the number of listed filters, as it may make the page messy from an interface perspective. Course additional field filters are shown in all catalogs and courses. Filters will be displayed according to the additional field type:
- Date. The date selection is displayed with radio buttons allowing you to select a date period or define a searching period.
- Dropdown. The values defined for the additional field selection are shown in the filter area as checkboxes, and with the possibility to make multiple selections.
- Text and free text. Depending on the selected option for the Allow filtering by this field parameter in the Field Settings area in the additional field area, values can be shown as a list, or can be searchable from a free search field. When Make the field's value searchable from the Search within results field of catalogs option is selected, text values will be searchable from the free search field.
- Iframe. This filtering area allows you to enter a JSON with the definition of the filter fields to be shown. Iframe filters can either be dropdowns or text fields. Please refer to the section below for some examples on how to configure Iframe additional fields.
Additional field filters are available for internal and external catalogs, on the My courses and learning plans page, in the Catalogs and Courses and learning plans widgets and for the global search (My courses and learning plans and Course catalogs tabs).
Configuration examples for iframe course additional fields
This section provides you with some examples of how to configure iframe course additional fields. Let’s assume we have the following JSON structure for the course Getting started with Docebo:
{ "internal_code":"2018-01A", "internal_status": "approved", "publishing_date":"2018-10-01", "course_tags":[ { "tag":"hr" }, { "tag":"fin" }, { "tag":"ops" } ], "teacher":{ "name":"John Doe", "email":"john.doe@example.com" } }
Now, use the following JSON filter configuration as an iframe additional field configuration to create:
- a filter to enable the search of a
course_code
from the search area. - a multiple-choice filter to search for a course according to its
internal_status
. - a date filter to search for the course
publishing_date
. - a multiple-choice filter to search for the
course_tags.tag
in a JSON array. - a filter to search for the
teacher.name
in a JSON object.
{ "filters":[ { "filter_name":{ "default":"Course Code", "italian":"Codice Corso" }, "filter_query_field":"$.internal_code", "filter_type":"text" }, { "filter_name":{ "default":"Internal Status" }, "filter_query_field":"$.internal_status", "filter_type":"dropdown", "filter_values":[ { "label":"Approved", "search_value":"approved" }, { "label":"Expired", "search_value":"expired" }, { "label":"Pending", "search_value":"pending" } ] }, { "filter_name":{ "default":"Publishing Date" }, "filter_query_field":"$.publishing_date", "filter_type":"date" }, { "filter_name":{ "default":"Course Tags" }, "filter_query_field":"$.course_tags[*].tag", "filter_type":"dropdown", "filter_values":[ { "label":"HR", "search_value":"hr" }, { "label":"Finance", "search_value":"fin" }, { "label":"Sales", "search_value":"sal" }, { "label":"Marketing", "search_value":"mkt" }, { "label":"Operations", "search_value":"ops" } ] }, { "filter_name":{ "default":"Teacher" }, "filter_query_field":"$.teacher.name", "filter_type":"text" } ] }
When configuring a new filter, use the main filters array with the following configurable values:
filter_name
Used to define the filter name. The default key allows you to set the filter name in the platform's default language, or to use the language (e.g. Italian, French, Spanish) as the key for the definition of the language translation.
filter_query_field
Used for the definition of the path of the JSON where the search will be executed. Some examples:
-
$.course_code
: looks for thecourse_code
value in the JSON root level. -
$.teacher.name
: looks for thename
value in the teacher JSON object. -
$.course_tags[*].tag
: looks for thetag
value in the course_tags array items.
filter_type
Use one of the following options:
- text to enable the textual search in Search within results.
- dropdown to generate a multiple-choice filter to search among a list of pre-defined values.
- date to display a date filter.
filter_values
Available only when the selected filter_type
is dropdown
, used to define the options for the multiple choice filter. Use label
to define the displayed option, and search_value
to set the value to be searched in the JSON. As an example, setting label
to Operations
and search_value
to ops
will generate a multiple choice filter with a label called Operations
searching for ops
in your JSON when clicked.
filter_query_join
Available only when the selected filter_type
is dropdown
, used to set the filter connector behavior as AND or OR when multiple selections are applied within the same filter section. When the filter_type
is dropdown and the filter_query_join
value is not declared, the filter connector behavior is OR. When the filter_query_join
is set to OR (default value), and the user selects two or more filters, the search results will show the courses complying with at least one of the selected filters. When set to AND, the search results will include the courses complying with all
of the selected filters. When the filter_query_join
is set to and, a tooltip is displayed next to the title of the impacted filters to inform users that only the courses matching all of the selected filter values will be displayed.
Sharing the link of your filtered results
When you search for a catalog and filter courses according to your needs, you can send the link of your filtered page to other users, so that you can share your search results with them. As you select filters to look for content in internal and external catalogs or the Course catalogs tab of the global search, the URL of the platform changes by adding the selected filters at the end of the link.
Once you get to the desired search results, you can copy the link and send it to other users. Depending on how the administrator configured the platform, you may see the Share this view button in the top right corner of the page. If available, click it to copy the URL of your filtered page in your clipboard, avoiding copy/paste mistakes.
Remember that filtered pages of external catalogs are accessible to everybody, while filtered pages of internal catalogs and global search results can be viewed by logged-in users only. Users using the link will have full visibility of your filtered page only if they have your same page set in their menu.
For example, if you filter a catalog in a Catalog area of your homepage, other users will see your search results only if they have the same page in their platform.
Where can I use advanced filters?
Advanced filters can be used in the following areas of the platform:
- Catalogs widget
- Courses and learning plans widget
- Global search result page