Skip to content
mFilter
mFilter
Faceted filtering for MODX 3 with SEO URL support
  1. Extras
  2. mFilter
  3. Front-end

Frontend

Documentation for mFilter frontend templates and layout.

Structure

SectionDescription
TemplatesChunks and markup
PlaceholdersTemplate variables

Overview

mFilter uses Fenom for templating. Main frontend parts:

Filter form

html
<form id="mfilter-form" data-mfilter-form>
    <!-- Filters -->
</form>

Results

html
<div id="mfilter-results" data-mfilter-results>
    <!-- Products/resources -->
</div>

Pagination

html
<div id="mfilter-pagination" data-mfilter-pagination>
    <!-- Page navigation -->
</div>

Quick start

Basic markup

html
<!-- Form snippet -->
[[!mFilterForm]]

<!-- Results snippet -->
[[!mFilter?
    &element=`msProducts`
    &paginator=`pdoPage`
    &parents=`5`
]]

Custom markup

html
<div class="catalog">
    <aside class="catalog__sidebar">
        [[!mFilterForm?
            &tplOuter=`@FILE chunks/mfilter/form.outer.tpl`
            &tplFilter.default=`@FILE chunks/mfilter/filter.default.tpl`
        ]]
    </aside>

    <main class="catalog__content">
        <div data-mfilter-results>
            [[!mFilter?
                &element=`msProducts`
                &paginator=`pdoPage`
                &tpl=`@FILE chunks/product.card.tpl`
            ]]
        </div>

        <div data-mfilter-pagination>
            [[!+page.nav]]
        </div>
    </main>
</div>

Data attributes

Required

AttributeElementDescription
data-mfilter-formformForm container
data-mfilter-resultsdivResults container

Optional

AttributeElementDescription
data-mfilter-paginationdivPagination container
data-mfilter-totalspanResult count
data-mfilter-filterfieldsetFilter block
data-mfilter-keyinputFilter key

CSS classes

States

ClassDescription
mfilter-loadingLoading data
mfilter-emptyNo results
mfilter-activeHas active filters

Form elements

ClassDescription
mfilter-filterFilter block
mfilter-filter--disabledDisabled filter
mfilter-valueFilter value
mfilter-value--selectedSelected value
mfilter-value--disabledDisabled value
mfilter-countProduct count

Default templates

Built-in templates are in:

core/components/mfilter/elements/chunks/

To customize, copy to your folder and set the path via tpl* parameters.