administrator/components/com_ชื่อคอมโพเน้นท์/views/ชื่อหน้าที่ต้องการเพิ่ม Filter/tmpl/default.php
ใส่ code นี้ลงไปเพื่อแสดงผลแถบ Filter
โค้ด: เลือกทั้งหมด
<?php
// Search tools bar
echo JLayoutHelper::render('joomla.searchtools.default', array('view' => $this));
?>
administrator/components/com_ชื่อคอมพอเน้นท์/views/ชื่อหน้าที่ต้องการเพิ่ม Filter/view.html.php
ใส่ code ในฟังค์ชั่น display เพื่อเรียกใช้งาน FilterForm และ ActiveFilters
โค้ด: เลือกทั้งหมด
$this->filterForm = $this->get('FilterForm');
$this->activeFilters = $this->get('ActiveFilters');
ทำการสร้างฟอร์ม XML เพื่อให้ ส่วนของ view เรียกไปใช้งาน โดยในที่นี้จะระบุไว้ 3 อย่างคือ ปุ่มค้นหา, ปุ่มค้นหาตามตัวอักษร, ปุ่มการแสดงกี่จำนวน
*หมายเหตุ
<option value="a.name asc">name น้อยไปมาก</option>
<option value="a.name desc">name มากไปน้อย</option>
name คือชื่อที่เราเก็บไว้ใน ฐานข้อมูล
asc คือการเรียงจากน้อยไปหามาก
desc คือการเรียงจากมากไปหาน้อย
โค้ด: เลือกทั้งหมด
<?xml version="1.0" encoding="utf-8"?>
<form>
<!--ปุ่มsearch-->
<fields name="filter">
<field
name="search"
type="text"
label="COM_CONTENT_FILTER_SEARCH_LABEL"
description="COM_CONTENT_FILTER_SEARCH_DESC"
hint="JSEARCH_FILTER"
/>
</fields>
<!--ปุ่มค้นหาจากชื่อที่เก็บไว้ในฐานข้อมูล โดยในที่นี้มี name,qty,price โดย asc หมายถึงการเรียงจากน้อยไปหามากและ desc เรียกจากมากไปหาน้อย-->
<fields name="list">
<field
name="fullordering"
type="list"
label="COM_CONTENT_LIST_FULL_ORDERING"
description="COM_CONTENT_LIST_FULL_ORDERING_DESC"
onchange="this.form.submit();"
default="a.id DESC"
>
<option value="a.name asc">name น้อยไปมาก</option>
<option value="a.name desc">name มากไปน้อย</option>
<option value="a.qty asc">qty น้อยไปมาก</option>
<option value="a.qty desc">qty มากไปน้อย></option>
<option value="a.price asc">price น้อยไปมาก</option>
<option value="a.price desc">price >มากไปน้อย</option>
<!--เพิ่มปุ่ม กำหนดว่าแสดงเท่าไหร่ ในที่นี้กำหนดไว้ตอนเริ่มต้นเป็น 20-->
</field>
<field
name="limit"
type="limitbox"
class="input-mini"
default="20"
label="COM_CONTENT_LIST_LIMIT"
description="COM_CONTENT_LIST_LIMIT_DESC"
onchange="this.form.submit();"
/>
</fields>
</form>