1. NOTICE: If you are using Fabrik and update to Joomla 3.10, you will need to update to Fabrik 3.10. And, if you are using Fabrik, do not upgrade to Joomla 4, we do not have a supported version ready for release. More information on a release date coming soon. Also, please note that Fabrik 3.10 will not install on any Joomla sites less than 3.8.
    Dismiss Notice

Display List Filter Horizontally

Jul 1, 2013
Display List Filter Horizontally
  • If you are using a default Fabrik template, first clone it by copying its folder in /components/com_fabrik/views/list/tmpl/ and renaming it.

    Then edit its default_filter.php template and replace its code with the following code:
    PHP:
    <div class="fabrikFilterContainer">
        <?php if ($this->filterMode === 3 || $this->filterMode === 4) {?>
            <div class="searchall">
                <ul class="fabrik_action">
                    <?php if (array_key_exists('all', $this->filters)) {
                        echo '<li>' . $this->filters['all']->element . '</li>';
                    }?>
                    <?php if ($this->filter_action != 'onchange') {?>
                        <li>
                            <input type="button" class="fabrik_filter_submit button" value="<?php echo JText::_('COM_FABRIK_GO');?>" name="filter" >
                        </li>
                    <?php } ?>
                </ul>
            </div>
        <?php } else { ?>
            <table class="filtertable fabrikList">
                <thead>
                    <tr class="fabrik___heading">
                        <?php foreach ($this->filters as $filter) {?>
                            <th><?php echo $filter->label;?></th>
                        <?php }?>
                    </tr>
                </thead>
                <tbody>
                    <tr class="fabrik_row oddRow1">
                        <?php
                            $c = 0;
                            foreach ($this->filters as $filter) {
                                $required = $filter->required == 1 ? ' notempty' : ""; ?>
                                <td class="<?php echo $required?>">
                                    <?php echo $filter->element;?>
                                </td>
                                <?php $c ++;
                            } ?>
                    </tr>
                </tbody>
                <tfoot>
                    <?php if ($this->filter_action != 'onchange') {?>
                        <tr class="fabrik_row oddRow0">
                            <td colspan="<?php echo count($this->filters)?>" style="text-align:right;">
                                <input type="button" class="fabrik_filter_submit button" value="<?php echo JText::_('COM_FABRIK_GO');?>"
                                  name="filter" />
                            </td>
                        </tr>
                    <?php }?>
                </tfoot>
            </table>
        <?php }?>
    </div>
    Finally edit your list and select your new template.
s6930064 likes this.