Các công cụ tìm kiếm không được mở theo mặc định


9

Chúng tôi đang triển khai các công cụ tìm kiếm cốt lõi trong chế độ xem danh sách thành phần tùy chỉnh của mình. Khi tôi nhấp vào các công cụ tìm kiếm, nó hiển thị biểu mẫu bên dưới là hoàn hảo.

nhập mô tả hình ảnh ở đây

Khi tôi nhấp vào trình đơn thả xuống và chọn một trạng thái cụ thể Ex.'Trashing ', trang sẽ được gửi và biểu mẫu được tải chỉ với các bản ghi được lưu trữ cũng hoàn hảo.

Sau khi tải trang xong, các công cụ tìm kiếm không hiển thị các bộ lọc theo mặc định. Người dùng một lần nữa cần nhấp vào nút công cụ tìm kiếm để mở các bộ lọc để đặt lại trạng thái đã chọn.

Làm cách nào để tạo các công cụ tìm kiếm để hiển thị các bộ lọc theo mặc định?

Câu trả lời:


7

Tôi quản lý để thêm tùy chọn như dưới đây

JLayoutHelper::render(
  'joomla.searchtools.default', 
   array('view' => $this, 
  'options' => array('filtersHidden' =>$hidden)));

Nếu $ hidden được đặt thành 0 thì các công cụ tìm kiếm sẽ không bị ẩn. Tôi đặt biến này một cách thích hợp dựa trên các giá trị bộ lọc được chọn.


3

Các trường bộ lọc sẽ tự động được điền nếu chúng được liệt kê trong mảng $ config ['filter_fields'] trong hàm tạo của bạn.

Ví dụ:

public function __construct ($config = array())
{
    if (empty($config['filter_fields']))
    {
        $config['filter_fields'] = array(
                'id', 'a.id',
                'title', 'a.title',
                'alias', 'a.alias',
                'checked_out', 'a.checked_out',
                'checked_out_time', 'a.checked_out_time',
                'catid', 'a.catid',
                'category_title',
                'published', 'a.published',
                'access', 'a.access',
                'access_level',
                'created', 'a.created',
                'created_by', 'a.created_by',
                'ordering', 'a.ordering',
                'featured', 'a.featured',
                'language', 'a.language',
                'hits', 'a.hits',
                'publish_up', 'a.publish_up',
                'publish_down', 'a.publish_down'
        );
    }

    parent::__construct($config);
}

Cảm ơn. Nhưng nó không hoạt động. Tôi có các trường được định cấu hình trong biến cấu hình trong hàm tạo nhưng tôi vẫn cần nhấp vào nút 'Công cụ tìm kiếm' để mở các tùy chọn bộ lọc. Khi tôi thực hiện một số nghiên cứu thêm về nguồn xem, tôi thấy "filtersHidden":trueluôn luôn được đặt là đúng trong trường hợp của tôi.
Malaiselvan

1

Tôi gặp vấn đề tương tự nhưng đã theo dõi nó là gì. Đây là một quá trình gồm nhiều bước để thiết lập các bộ lọc.

  1. Để các bộ lọc hoạt động, bạn cần thêm tệp filter_.xml trong thư mục mô hình / biểu mẫu. Điều này cần một tệp XML XML thông thường.
  2. Bạn cần đặt các bộ lọc như được đề cập bởi @Nagarjun trong mô hình của bạn
  3. Theo quan điểm của bạn, bạn cần thêm dòng này vào chức năng hiển thị

    $this->activeFilters = $this->get('ActiveFilters');
    
  4. Trong trường hợp bạn có docblocks, bạn cần chỉ định nó là biến công khai :

    /**
      * List of active filters
      *
      * @var    array
      * @since  1.0
      */
    public $activeFilters = array();
    
  5. Cuối cùng thêm các bộ lọc vào tệp mẫu của bạn:

    echo JLayoutHelper::render('joomla.searchtools.default', array('view' => $this));
    
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.