Tổng quan về block cho NukeViet 3.0
Hệ thống NukeViet 3.0 chia làm 2 loại block:
- - Block Global: sử dụng chung cho toàn bộ site, ở mọi vị trí. Block loại này có 3 kiểu: File, Khối quảng cáo, Dạng HTML.
Block Global kiểu file được đặt trong thư mục \includes\blocks\
Tên file block được đặt theo kiểu global.block_name.php, trong đó block_name là tên block, được sử dụng các chữ thường, số và ký tự "_" trong bảng chữ cái latin.
- Block của module: chỉ sử dụng được tại module đó. Block loại này là block dạng file, được đặt trong thư mục block của module: \modules\module_name\blocks\
Tên file block được đặt theo kiểu module.block_name.php, trong đó block_name là tên block, được sử dụng các chữ thường, số và ký tự "_" trong bảng chữ cái latin.
Nếu các block trên muốn sử dụng các giao diện riêng thì phần giao diện cho nó được đặt ở đây: \themes\theme_name\blocks\
Các mẫu giao diện chung cho block ở mỗi theme được đặt ở đây: \themes\theme_name\layout\
Nâng cấp các block của NukeViet 2.0 sử dụng cho NukeViet 3.0:
Nói chung, các block của NukeViet 2.0 mà không đọc vào database thì có thể sử dụng chung cho NukeViet 3.0 chỉ với một chút sửa đổi. cụ thể như sau.
Ví dụ tôi có block block-thoitiet_HN_HP_HCM.php của NukeViet 2.0 như sau:
Mã PHP:
<?php
if ((!defined('NV_SYSTEM')) AND (!defined('NV_ADMIN'))) {
Header("Location: ../index.php");
exit;
}
$content = "<!-- http://xaydungcauduong.net -->";
$content .= "<p>Hà Nội<br><img alt=\"Thời tiết thủ đô Hà Nội\" border=\"0\" ";
$content .= "src=\"http://banners.wunderground.com/banner/gizmotimetemp_both/language/english/global/stations/48820.gif\" height=41 width=127></p>";
$content .= "";
$content .= "<p>Hải Phòng<br><IMG height=41 alt=\"Thời tiết Bạch Long Vĩ, Hải Phòng\" ";
$content .= "src=\"http://banners.wunderground.com/banner/gizmotimetemp_both/language/english/global/stations/48839.gif\" width=127></p>";
$content .= "";
$content .= "<p>TP.HCM<br><img alt=\"Thời tiết TP. Hồ Chí Minh\" border=\"0\" ";
$content .= "src=\"http://banners.wunderground.com/banner/gizmotimetemp_both/language/english/global/stations/48900.gif\" height=41 width=127></p>";
$content .= "";
$content .= "<!-- code by http://xaydungcauduong.net -->";
?>
Tôi sẽ bỏ đi đoạn:
Mã PHP:
if ((!defined('NV_SYSTEM')) AND (!defined('NV_ADMIN'))) {
Header("Location: ../index.php");
exit;
}
đoạn code an ninh này không còn cần thiết trong NukeViet 3 nữa vì NukeViet 3.0 bảo vệ cả thư mục này.
Đoạn code còn lại là:
Mã PHP:
<?php
$content = "<!-- http://xaydungcauduong.net -->";
$content .= "<p>Hà Nội<br><img alt=\"Thời tiết thủ đô Hà Nội\" border=\"0\" ";
$content .= "src=\"http://banners.wunderground.com/banner/gizmotimetemp_both/language/english/global/stations/48820.gif\" height=41 width=127></p>";
$content .= "";
$content .= "<p>Hải Phòng<br><IMG height=41 alt=\"Thời tiết Bạch Long Vĩ, Hải Phòng\" ";
$content .= "src=\"http://banners.wunderground.com/banner/gizmotimetemp_both/language/english/global/stations/48839.gif\" width=127></p>";
$content .= "";
$content .= "<p>TP.HCM<br><img alt=\"Thời tiết TP. Hồ Chí Minh\" border=\"0\" ";
$content .= "src=\"http://banners.wunderground.com/banner/gizmotimetemp_both/language/english/global/stations/48900.gif\" height=41 width=127></p>";
$content .= "";
$content .= "<!-- code by http://xaydungcauduong.net -->";
?>
Sau đó tôi lưu lại file này với tên global.thoitiet_hn_hp_hcm.php và đặt nó tại \includes\blocks\
Cuối cùng tôi chỉ việc vào Admin Control Panel của NukeViet 3.0, tạo block mới kiểu file và trỏ tới block này.
Chú ý:
- Block có ảnh hưởng trực tiếp đến giao diện site. NukeViet 3 sử dụng chuẩn xHTML 1.0 và CSS 1.1 vì vậy bạn cần kiểm tra để hợp chuẩn bằng cách click vào nút valid xHTML và CSS có ở theme mặc định, tránh vì một vài block mà phá vỡ chuẩn mực giao diện của site.
- Vì NukeViet 3.0 có hỗ trợ rewrite nên nếu block trong của bạn sử dụng các tệp tin từ website hoặc có link là đường dẫn tương đối thì phải chèn vào đầu mỗi đường dẫn tương đối đoạn code:
Mã PHP:
{NV_BASE_SITEURL}
{NV_BASE_SITEURL} sẽ chỉ ra địa chỉ đường dẫn một cách chính xác khi bạn phải duyệt qua URL ảo do rewrite tạo ra. Lưu ý là đằng sau {NV_BASE_SITEURL} không có gạch chéo nào cả, ví dụ tôi cài NukeViet 3 tại thư mục gốc của tên miền http://nukeviet.vn, khi muốn chỉ đến trang chủ website (file index.php) tôi sẽ phải ghi địa chỉ link như sau:
Mã PHP:
{NV_BASE_SITEURL}index.php
(theo: nukeviet.vn)
View more latest threads same category:
Bookmarks