Skip to content

Hướng dẫn nâng cấp module tương thích bản 4.0.29 lên 4.1.00

Tan Dung Phan edited this page Sep 19, 2016 · 2 revisions

Về cơ bản, NukeViet 4.1.00 không có thay đổi quá nhiều về mặt cấu trúc so với NukeViet 4 Official, do đó các module sử dụng cho NukeViet 4.1.00 nếu không cần nâng cấp vẫn hoạt động được trên NukeViet 4.1.00. Tuy nhiên, để tối ưu module hơn, cần lưu ý các vấn đề sau:

Chức năng comment của hệ thống

Nếu module có sử dụng chức năng comment của hệ thống, cần thêm hai cấu hình perpagecommtimeoutcomm bằng cách thêm vào file action:

$sql_create_module[] = "INSERT INTO " . NV_CONFIG_GLOBALTABLE . " (lang, module, config_name, config_value) VALUES ('" . $lang . "', '" . $module_name . "', 'perpagecomm', '5')";
$sql_create_module[] = "INSERT INTO " . NV_CONFIG_GLOBALTABLE . " (lang, module, config_name, config_value) VALUES ('" . $lang . "', '" . $module_name . "', 'timeoutcomm', '360')";

Chú ý:

  • perpagecomm là số bình luận trên một trang
  • timeoutcomm là thời gian tính bằng giây giữa hai lần gửi bình luận (bằng 0 thì không giới hạn)

Sửa tối ưu cache:

Việc này nhằm tối ưu cache, nếu không thực hiện module vẫn hoạt động bình thường.

Tìm trong code module (đặc biệt ở các file `modules/ten-module/funcs/sitemap.php) các phần kiểm tra thời gian cache giống

filemtime(NV_ROOTDIR . '/' . NV_CACHEDIR . '/' . $module_name . '/' . $cacheFile) >= $pa

Nếu có xóa các phần đó, kiểm tra lại biến $pa theo kiểu $pa = NV_CURRENTTIME - 7200;, đưa giá trị 7200 thành time-to-live (tham số thứ tư) trong lệnh $nv_Cache->getItem$nv_Cache->setItem.

Ví dụ cụ thể đối với module news:

Mở modules/news/funcs/sitemap.php tìm

$pa = NV_CURRENTTIME - 7200;

Thay lại thành

$cacheTTL = 7200;

Tìm

if (($cache = $nv_Cache->getItem($module_name, $cacheFile)) != false and filemtime(NV_ROOTDIR . '/' . NV_CACHEDIR . '/' . $module_name . '/' . $cacheFile) >= $pa) {

Thay lại thành

if (($cache = $nv_Cache->getItem($module_name, $cacheFile, $cacheTTL)) != false) {

Tìm

$nv_Cache->setItem($module_name, $cacheFile, $cache);

Thay lại thành

$nv_Cache->setItem($module_name, $cacheFile, $cache, $cacheTTL);

Sửa để phù hợp Jquery 3

Tại các đoạn có dạng

$(window).load(function () {

Thay lại thành

$(window).on('load', function() {
Clone this wiki locally