Help:WSSearchFront: Difference between revisions
No edit summary |
No edit summary |
||
| Line 93: | Line 93: | ||
| rowspan="2" | |
| rowspan="2" | |
||
| rowspan="2" |if set a drop-down with sort options will be shown, default results will be sorted by relevance, optional a label for the property to sort on can be set by adding text before the property devised by <code>:</code> |
| rowspan="2" |if set a drop-down with sort options will be shown, default results will be sorted by relevance, optional a label for the property to sort on can be set by adding text before the property devised by <code>:</code> |
||
|<code>sort options=Version, Title</code> |
|||
|- |
|- |
||
|<code><text>:<property></code>,<code><text>:<property></code> |
|<code><text>:<property></code>,<code><text>:<property></code> |
||
|<code>sort options=Version number:Version, Page name:Title</code> |
|||
|- |
|- |
||
|layout |
|layout |
||
| Line 169: | Line 170: | ||
|combobox |
|combobox |
||
|shows a drop-down combo-box instead of the default check-boxes |
|shows a drop-down combo-box instead of the default check-boxes |
||
|<code>@Author#display=combobox</code> |
|||
| |
|||
|- |
|- |
||
|ask combobox |
|ask combobox |
||
|shows a comb-box and uses an ask query as you type to generate options. see [[Help:WSSearchFront#ask combobox|ask combox]] for more information |
|shows a comb-box and uses an ask query as you type to generate options. see [[Help:WSSearchFront#ask combobox|ask combox]] for more information |
||
| ⚫ | |||
| |
|||
<code>#display=ask combobox</code> |
|||
<code>#query=<nowiki>[[Class::User]]</nowiki></code> |
|||
<code>#data=Full name</code> |
|||
|- |
|- |
||
|search |
|search |
||
|adds a search input for the specified property |
|adds a search input for the specified property |
||
|<code>@Title#display=search</code> |
|||
| |
|||
|- |
|- |
||
|datepicker |
|datepicker |
||
|adds two [[Manual:DateInputWidget|DateInputWidgets]] that are used for filtering the results by a date property |
|adds two [[Manual:DateInputWidget|DateInputWidgets]] that are used for filtering the results by a date property |
||
|<code>@Modification date#display=datepicker</code> |
|||
| |
|||
|- |
|- |
||
|range |
|range |
||
|adds the default check-boxes but with a set of ranges from the property |
|adds the default check-boxes but with a set of ranges from the property. see [[Help:WSSearchFront#range|range]] for more information |
||
|<code>@Range</code> |
|||
| |
|||
<code>#display=range</code> |
|||
<code>#max=5</code> |
|||
<code>#step=1</code> |
|||
|- |
|- |
||
|sorted |
|sorted |
||
|adds the default check-boxes but sorts on a given ask query |
|adds the default check-boxes but sorts on a given ask query. see [[Help:WSSearchFront#sorted|sorted]] for more information |
||
| |
| |
||
|- |
|- |
||
| Line 194: | Line 205: | ||
|<code><text></code> |
|<code><text></code> |
||
|defines a label to be used for display instead of the property name |
|defines a label to be used for display instead of the property name |
||
|<code>@Modification date</code> |
|||
| |
|||
<code>#label=Date</code> |
|||
|- |
|- |
||
|#logic |
|#logic |
||
|or |
|or |
||
|set logic to or, needs 'post filter properties' setting in back-end WSSearchConfig |
|set logic to or, needs 'post filter properties' setting in back-end WSSearchConfig see [[Extension:WSSearch|WSSearch]] for more information |
||
| |
| |
||
|- |
|- |
||
| Line 210: | Line 222: | ||
|translates the property values based on a given ask query |
|translates the property values based on a given ask query |
||
| |
| |
||
| ⚫ | |||
| ⚫ | |||
| ⚫ | |||
|} |
|} |
||
===== ask combobox ===== |
===== ask combobox ===== |
||
{| class="wikitable" |
{| class="wikitable" |
||
|+#display=ask combobox |
|+<code>#display=ask combobox</code> |
||
!setting |
!setting |
||
!values |
!values |
||
| Line 226: | Line 241: | ||
@Tags |
@Tags |
||
#display=ask combobox |
#display=ask combobox |
||
# |
#query=[[Class::Tag]] |
||
#data=Tag ID |
#data=Tag ID |
||
#text=Tag name |
#text=Tag name |
||
</syntaxhighlight> |
</syntaxhighlight> |
||
|- |
|- |
||
|#data |
|#data |
||
| Line 246: | Line 261: | ||
===== Sorted ===== |
===== Sorted ===== |
||
{| class="wikitable" |
{| class="wikitable" |
||
|+#display=sorted |
|+<code>#display=sorted</code> |
||
!setting |
!setting |
||
!values |
!values |
||
| Line 258: | Line 273: | ||
@Tags |
@Tags |
||
#display=sorted |
#display=sorted |
||
# |
#query=[[Tag::+]][[-Has subobject.Type::Search Tag]] |
||
#data=-Has subobject.Name |
#data=-Has subobject.Name |
||
#text=Tag name |
#text=Tag name |
||
| Line 270: | Line 285: | ||
|<code><property></code> |
|<code><property></code> |
||
|property for display |
|property for display |
||
|} |
|||
===== Translation ===== |
|||
{| class="wikitable" |
|||
|+#translation |
|||
!setting |
|||
!values |
|||
!decription |
|||
!example |
|||
|- |
|||
|#query |
|||
| ⚫ | |||
|ask query |
|||
|<syntaxhighlight lang="py"> |
|||
| ⚫ | |||
| ⚫ | |||
| ⚫ | |||
</syntaxhighlight> |
|||
|} |
|} |
||
===== Range ===== |
===== Range ===== |
||
{| class="wikitable" |
{| class="wikitable" |
||
|+#display=range |
|+<code>#display=range</code> |
||
!setting |
!setting |
||
!values |
!values |
||
Revision as of 11:08, 28 August 2021
| This page is in progress Please check back later for additional changes. |
The WSSearchFront extension is a front-end for WSSearch written in Vue.js
For installation instructions see the extension page
Configuration
The WSSearchFront extension must be configured using the WSSearchFrontend parser function
There are 3 types of configuration:
- Settings, without a prefix
- Filter settings, prefixed with a
@ - Result settings, prefixed with a
?
most of the configurations have more setting options prefixed with a #
Example configuration:
{{#WSSearchFrontend:
|size=10
|tite=Page Title
|@Tag
|@Year
#display=range
#max=20
#type=date
|?Users
#display=link
|?Image
#display=image
#label=Page image
|?Rating
#display=template
#template=Special rating
}}
Available configuration options
settings
| parameter | parameter values | settings | setting values | description | example |
|---|---|---|---|---|---|
| size | <number>
|
defines how many results are shown per page | size=10
| ||
| size options | <number>, <number>
|
if set a drop-down with the defined size options will be shown | size options=10, 20, 50
| ||
| title | <property>
|
property that will be used for the search results title and link | title=Title
| ||
| #label | <text>
|
sets a label for the title column in table layout | |||
| #highlight | true | highlights the search term in the title | |||
| #urlstring | <text>
|
adds search terms as an url parameter named by the value to the links href | |||
| sort options | <property>, <property>
|
if set a drop-down with sort options will be shown, default results will be sorted by relevance, optional a label for the property to sort on can be set by adding text before the property devised by :
|
sort options=Version, Title
| ||
<text>:<property>,<text>:<property>
|
sort options=Version number:Version, Page name:Title
| ||||
| layout | table | changes the layout for the search results to a table | layout=table
| ||
| clear | term | if set, the 'clear all filters' button also clears the search term | clear=term
|
Search result settings
| parameter | settings | setting values | description | example |
|---|---|---|---|---|
?<property>
|
#display | image | displays an image, the property must be the full URL to the image | ?Image#display=image
|
| link | creates a link from a property | ?User#display=link
| ||
| pill | creates a pill, that can be used for filter selection | ?Tag#display=pill
| ||
| template | parses a template, add #template=<template> . The {{{Page|}}} and {{{Value|}} parameters are passed to the template
|
?Icon#display=template
| ||
| #template | <template> | used with #display=template
| ||
| #label | <text>
|
adds a label in front of the displayed property value. When table layout is used it defines the tabel column header name | ?Rating#label=Page rating
| |
| #highlight | true | highlights the search term on the displayed property value | ?Description#highlight=true
|
Facets filter settings
Facet filters are divined by adding a @ in front of the property name, when no display setting is used the default check-boxes are displayed
| parameter | settings | setting values | description | example |
|---|---|---|---|---|
| @<property> | #display | combobox | shows a drop-down combo-box instead of the default check-boxes | @Author#display=combobox
|
| ask combobox | shows a comb-box and uses an ask query as you type to generate options. see ask combox for more information | @Author
| ||
| search | adds a search input for the specified property | @Title#display=search
| ||
| datepicker | adds two DateInputWidgets that are used for filtering the results by a date property | @Modification date#display=datepicker
| ||
| range | adds the default check-boxes but with a set of ranges from the property. see range for more information | @Range
| ||
| sorted | adds the default check-boxes but sorts on a given ask query. see sorted for more information | |||
| #label | <text>
|
defines a label to be used for display instead of the property name | @Modification date
| |
| #logic | or | set logic to or, needs 'post filter properties' setting in back-end WSSearchConfig see WSSearch for more information | ||
| #sort | alphabetically | sorts the facets alphabetically | ||
| #translation | <property>
|
translates the property values based on a given ask query |
@Service #translation=Name #query=[[Class::Service]] |
ask combobox
| setting | values | description | example |
|---|---|---|---|
| #query | <ask>
|
ask query | @Tags
#display=ask combobox
#query=[[Class::Tag]]
#data=Tag ID
#text=Tag name
|
| #data | <property>
|
property for options | |
| #text | <property>
|
label for options | |
| #search | true | searches for typed term on enter key |
Sorted
| setting | values | description | example |
|---|---|---|---|
| #query | <ask>
|
ask query | @Tags
#display=sorted
#query=[[Tag::+]][[-Has subobject.Type::Search Tag]]
#data=-Has subobject.Name
#text=Tag name
|
| #data | <property>
|
property to sort on | |
| #text | <property>
|
property for display |
Range
| setting | values | description | example |
|---|---|---|---|
| #max | <number>
|
maximum number of ranges | @Year
#display=range
#max=20
#type=date
|
| #step | <number>
|
step for range | |
| #type | date | type for date ranges |
Styling and layout
WSSearchFront can be styled using CSS. Components are logically named using BEM convention, and the layout id defined with CSS Grid
