請選擇 進入手機版 | 繼續訪問電腦版

OpenCart 台灣技術論壇

 找回密碼
 立即註冊
搜索
查看: 4927|回復: 6

[分享]修改後台商品的分類下拉選單只顯示5筆的限制

[複製鏈接]

126

主題

1148

帖子

3652

積分

管理員

Rank: 9Rank: 9Rank: 9

積分
3652
發表於 2016-1-11 11:16:30 | 顯示全部樓層 |閱讀模式
在 OpenCart 後台的商品編輯中,
商品分類提供了具有(自動完成)功能的下拉選單,
就是當你輸入(最後一層)分類名稱的第一個字時,
系統便會更新下拉選單,顯示符合的商品分類,
而當您未輸入任何分類名稱時,
則下拉選單出現的是5筆分類(依分類名稱排序)。

這樣的操作模式,對大部分的使用者來說都不太方便,
因為大部分商店的商品分類,都只有一、二十種而已,
若能直接將全部分類一次顯示,
就能以省掉先輸入商品分類再做選擇的動作,
所以此篇文章,就是要來教大家如何修改5筆商品分類的限制。

由於限定顯示5筆商品分類,是被寫死在程式之中,
故我們必須先開啟檔案 admin\controller\catalog\categories.php
捲到檔案最下方的 public function autocomplete() 如下:
  1. public function autocomplete() {
  2.                 $json = array();

  3.                 if (isset($this->request->get['filter_name'])) {
  4.                         $this->load->model('catalog/category');

  5.                         $filter_data = array(
  6.                                 'filter_name' => $this->request->get['filter_name'],
  7.                                 'sort'        => 'name',
  8.                                 'order'       => 'ASC',
  9.                                 'start'       => 0,
  10.                                 'limit'       => 5
  11.                         );

  12.                         $results = $this->model_catalog_category->getCategories($filter_data);

  13.                         foreach ($results as $result) {
  14.                                 $json[] = array(
  15.                                         'category_id' => $result['category_id'],
  16.                                         'name'        => strip_tags(html_entity_decode($result['name'], ENT_QUOTES, 'UTF-8'))
  17.                                 );
  18.                         }
  19.                 }

  20.                 $sort_order = array();

  21.                 foreach ($json as $key => $value) {
  22.                         $sort_order[$key] = $value['name'];
  23.                 }

  24.                 array_multisort($sort_order, SORT_ASC, $json);

  25.                 $this->response->addHeader('Content-Type: application/json');
  26.                 $this->response->setOutput(json_encode($json));
  27.         }
複製代碼

其中的 'limit' => 5 就是設定顯示 5 筆分類的地方,
您可以自行修改成其他數字,例如 100,
若您的商品分類數在 100 比以內,
則新的分類下拉選單將會顯示您全部的分類,
若您的分類數超過 100 筆時,則會顯示前 100 筆分類,
此時您也可以考慮修改成更大的數字。

修改前(顯示5筆)


修改後(顯示全部分類)




OpenCart 頂級技術服務廠商
系統安裝、功能擴充、功能客制、代管維護、疑難雜症處理
URL : www.ntcart.com
Email : [email protected]

4

主題

17

帖子

76

積分

註冊會員

Rank: 2

積分
76
發表於 2016-6-21 22:59:31 | 顯示全部樓層
attribute.php = 商品屬性
attribute_group.php = 屬性群組
download.php = 下載商品
filter.php = 過濾器
manufacturer.php = 品牌
option.php = 商品選項
product.php = 相關商品

同一個的目錄底下的各個php所相對應的選項
都可以修改顯示筆數喔

4

主題

17

帖子

76

積分

註冊會員

Rank: 2

積分
76
發表於 2016-1-16 14:21:15 | 顯示全部樓層
感謝解決方案!!已修改完成~~

4

主題

17

帖子

76

積分

註冊會員

Rank: 2

積分
76
發表於 2016-1-20 02:13:22 | 顯示全部樓層
板主,請問其他像是相關產品、品牌這些,要去哪裡修改顯示的最大筆數呢?

126

主題

1148

帖子

3652

積分

管理員

Rank: 9Rank: 9Rank: 9

積分
3652
 樓主| 發表於 2016-1-20 08:37:48 | 顯示全部樓層
可否請您提供截圖說明您想要修改的地方。
OpenCart 頂級技術服務廠商
系統安裝、功能擴充、功能客制、代管維護、疑難雜症處理
URL : www.ntcart.com
Email : [email protected]

8

主題

28

帖子

131

積分

註冊會員

Rank: 2

積分
131
發表於 2016-6-30 04:01:11 | 顯示全部樓層
感謝!正想問如果要顯示增加選項超過5筆的話要怎麼設定!
感恩感恩再感恩~

44

主題

452

帖子

1587

積分

版主

Rank: 7Rank: 7Rank: 7

積分
1587
發表於 2016-6-30 19:58:20 | 顯示全部樓層
本帖最後由 bau720123 於 2016-6-30 23:38 編輯
d83034 發表於 2016-6-30 04:01
感謝!正想問如果要顯示增加選項超過5筆的話要怎麼設定!
感恩感恩再感恩~ ...

謝謝版主的分享
您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

Archiver|手機版|小黑屋|OpenCart 2.x 討論區  

GMT+8, 2019-8-22 21:56 , Processed in 0.043819 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表