เนื่องจาก Default Part ของ KCFinder จะเป็น Part รวม ซึ่งจะแสดงทุกไฟล์ที่ถูกอัพผ่าน KCFinder แน่นอนว่าหากเราอัพไฟล์ขึ้นไปทุกวัน ไฟล์ที่อยู่บน Server ก็จะยิ่งมากขึ้นทำให้การดึงข้อมูลไฟล์ทุกไฟล์มาแสดงผลใช้เวลาโหลดนานมากจนบางทีค้างไปเลยก็มี
ดังนั้นเพื่อลดการโหลดการแสดงผล จึงปรับใหม่โดยให้ทุกปีและทุกเดือนให้มีการสร้างโฟลเดอร์อัตโนมัติเพื่อรองรับการเก็บไฟล์และให้ชี้ Default Part มาที่โฟลเดอร์ปีและเดือนปัจจุบัน
แก้ไขไฟล์ core/browser.php
ค้นหา
1 2 |
!is_dir("$thumbsDir/{$this->type}") && !@mkdir("$thumbsDir/{$this->type}", $this->config['dirPerms']) |
และแทนที่ด้วย
1 2 |
!is_dir("$thumbsDir/{$this->type}/".date("Y")) && !@mkdir("$thumbsDir/{$this->type}/".date("Y"), $this->config['dirPerms']) |
จากนั้นให้เพิ่มโค๊ดด้านล่างนี้ ต่อจากโค๊ด $this->errorMsg(“Cannot access or create thumbnails folder.”);
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
if ( !is_dir($this->config['uploadDir']."/{$this->type}/".date("Y")) && !@mkdir($this->config['uploadDir']."/{$this->type}/".date("Y"), $this->config['dirPerms']) ) $this->errorMsg("Cannot access or create upload folder."); //Create SubFolder if ( !is_dir("$thumbsDir/{$this->type}/".date("Y")."/".date("m")) && !@mkdir("$thumbsDir/{$this->type}/".date("Y")."/".date("m"), $this->config['dirPerms']) ) $this->errorMsg("Cannot access or create thumbnails folder."); if ( !is_dir($this->config['uploadDir']."/{$this->type}/".date("Y")."/".date("m")) && !@mkdir($this->config['uploadDir']."/{$this->type}/".date("Y")."/".date("m"), $this->config['dirPerms']) ) $this->errorMsg("Cannot access or create upload folder."); // |
จากนั้นให้หาโค๊ด
1 |
$this->session['dir'] = $this->type; |
และแทนที่ด้วยโค๊ดด้านล่างเพื่อกำหนด Default part
1 |
$this->session['dir'] = $this->type."/".gmdate("Y")."/".gmdate("m"); |
*หมายเหตุ อ้างอิงจาก KCFinder v2.21 (ซึ่งเก่ามากกกกกก) 🙂
ลองเวอร์ชันล่าสุดดาวน์โหลดที่ https://github.com/sunhater/kcfinder
ป้ายกำกับ:ckfinder