Các quy tc khi lp trình Module

Một phần của tài liệu Tạo dựng Web-Portal trên nền Nukeviet (Trang 64 - 68)

III. Lp trình đn gin NukeViet1.0

2. Module

2.1. Các quy tc khi lp trình Module

Vi c l p trình m t Module khá d n u b n bi t PHP, ch c n n m thêm m t s quy t c sau:

a, M i file vi t cho Module đ u ph i b t đ u b ng đo n mã: Code:

if (!eregi("modules.php", $PHP_SELF)) {

die ("You can't access this file directly... <br>Rat tiec, ban khong the truy cap truc tiep file nay!");

}

o n mã này có tác d ng c m ng i dùng truy c p tr c ti p đ n file. Bu c h ph i s d ng h th ng link c a b n nh m đ m b o và ki m soát quá trình hi n th thông tin.

b, H th ng NukeViet đã đ c thi t k đ t đ ng nh n d ng các file ngôn ng . phát huy s c m nh đa ngôn ng trên h th ng NukeViet, b n hãy t o m t th m c có tên "language" bên trong th m c chính c a Module. Sau đó, trong m i file vi t cho Module hãy chèn đo n mã:

Code:

require_once("mainfile.php");

$module_name = basename(dirname(__FILE__)); get_lang($module_name);

o n mã này s chèn file ngôn ng (n u có) phù h p v i thi t đ t trong cookie c a ng i truy c p.

Các file ngôn ng ph i có tên nh sau: lang-vietnamese.php : ti ng Vi t

lang-english.php: ti ng Anh lang-french.php: Pháp lang-german.php : c

lang-chinese.php : Trung Hoa lang-russian.php : Nga

lang-thai.php: Thái Lan lang-italian.php: Ý …

c, Không s d ng cách tr ng trong tên th m c Module, thay vào đó hãy s d ng ký t “_”

d, Theo h ng d n c a h th ng PHP-Nuke, liên k t t i file c a Module ph i có cú pháp nh sau: http://www.yoursite.com/modules.php?mop=modload&name=Ten_Module&file =index V i h th ng NukeViet 1.0 còn có th s d ng c u trúc link d ng: http://localhost/home/modules.php?name=Ten_Module&file=index Trong đó:

Ten_Module: tên c a Module (tên th m c ch a Module) Index: tên file c a Module.

N u b n c n liên k t t i m t hàm xác đ nh t i b t k file nào c a module thì ch vi c thêm vào URL trên m t đo n mã sau:

&switchname=name

Nh v y, n u b n khai báo m t s chuy n đ i d ng : Code: switch($func) { case "func-one": funct-one(); break; } B n s g i nó qua link : http://www.yoursite.com/modules.php?mop=modload&name=Ten_module&file =index&func=func-one

N u hàm c a b n c n nh n nh ng bi n nh ng giá tr , s chuy n đ i c a b n s gi ng nh sau: Code: switch($func) { case "func-one": funct-one($xid, $xname); break; } Và link đ t i đó là : http://www.yoursite.com/modules.php?mop=modload&name=Ten_Module&file =index&func=func-one&xid=$xid&xname=$xname

N u b n c n s d ng các form bên trong Module, B n hãy s d ng mã này: Code:

<form action="modules.php?mop=modload&name=Ten_Module &file=index&func=Ten_ham" method="post">

... </form>

nh ng nh không s d ng nh ng tên nh ng bi n ki u nh "name" và/ho c “file” và s d ng bi n "$mop".

Chú ý quan tr ng:

B n c n bi t r ng h th ng module luôn có s n các bi n, chúng là :

$name: Khai báo tên Module

$file: Khai báo tên file đang s d ng

$mop: S d ng modules.php cho s chuy n đ i

$index: Thêm ho c lo i b nh ng kh i bên ph i $modload: G i

M t đi u thú v h th ng NukeViet là vi c cho phép s d ng các c t Block ph i và trái trong h th ng Module hay không. Vi c này th c hi n r t d dàng b ng cách đ u file, b n khai báo bi n:

Code:

$index = 1;

N u giá tr là “1”, module c a b n s hi n c c t Block ph i, n u giá tr là “0”, s ch hi n th nh ng Block trái.

Nh r ng b n luôn có th s d ng h th ng các file phiên d ch ngôn ng cho Module.

C nh báo:

website làm vi c v i các trình duy t s d ng chu n HTML 4.01 (ho c các phiên b n c h n) thì t t c các ký t "&" trong URL vi t cho Module ph i đ c thay b ng th "&amp;". Ví d URL:

<a href="modules.php?op=modload&name=FAQ&file=index">

Ph i đ c vi t thành:

<a href="modules.php?op=modload&amp;name=FAQ&amp;file=index">

N u không, website c a b n s không t ng thích v i chu n HTML 4.01.

Một phần của tài liệu Tạo dựng Web-Portal trên nền Nukeviet (Trang 64 - 68)

Tải bản đầy đủ (PDF)

(159 trang)