21:07 ICT Thứ bảy, 21/12/2024

Thống kê truy cập

Hôm nayHôm nay : 1038

Tháng hiện tạiTháng hiện tại : 15695

Tổng lượt truy cậpTổng lượt truy cập : 1750196

Chuyên mục Công nghệ

Trang chủ » News » Nukeviet » Nukeviet 3.0 » Modules

Hướng dẫn viết module cho nukeviet 3.1

Thứ ba - 15/11/2011
-- Cấu trúc một module, chức năng các file, các file, floder bắt buộc phải có. -- Cách viết một module đơn giản chỉ chứa file PHP. -- Mở rộng kết hợp file PHP riêng ngoài các file bắt buộc phải có. -- Làm việc với file ngôn ngữ lang. -- Sử dụng xtemplate. -- Mở rộng thêm các file thông tin module, RSS -- Sử dụng javscript và ajax cho module

Để dễ thao tác các bạn hãy làm giống mình phần code (số dòng)
Trong khuôn khổ bài viết này mình sẽ trình bày với các bạn cấu trúc cơ bản, công dụng cũng như chức năng của từng file trong thư mục module và cách viết một module chi tiết từ đơn giản tới phức tạp. 
-- Cấu trúc một module, chức năng các file, các file, floder bắt buộc phải có.
-- Cách viết một module đơn giản chỉ chứa file PHP.
-- Mở rộng kết hợp file PHP riêng ngoài các file bắt buộc phải có.
-- Làm việc với file ngôn ngữ lang.
-- Sử dụng xtemplate.
-- Mở rộng thêm các file thông tin module, RSS
-- Sử dụng javscript và ajax cho module (phần AJAX các bạn xem tại viewtopic.php?f=117&t=15403).
-- Sử dụng lớp (class) đã được xây dựng sẵn.
-- Tích hợp thêm các phần mở rộng

Trước khi vào phần hướng dẫn mình xin trình bày một số quy ước. Các file PHP được bắt đầu với phần thông tin về tác giả, bản quyền, ngày viết, email tác giả.. VÍ dụ như:


MÃ: CHỌN TẤT CẢ
/**
* @Project NUKEVIET-MUSIC
* @Author Phan Tan Dung (phantandung92@gmail.com)
* @copyright 2011
* @createdate 26/01/2011 09:17 AM
*/


Tương tự cho các file js



MÃ: CHỌN TẤT CẢ
/* *
* @Project NUKEVIET-MUSIC
* @Author Phan Tan Dung (phantandung92@gmail.com)
* @copyright 2011
* @createdate 26/01/2011 09:17 AM
*/


Tên module tốt nhất các bạn chỉ đặt tên bằng chữ cái không chứa các kí tự đặc biệt.

Bây giờ ta vào phần chi tiết.

---- CẤU TRÚC CƠ BẢN CỦA MỘT MODULE
Bao gồm các file và thư mục sau:
- admin.functions.php
- version.php
- funcs
- funcs/main.php
- admin
- admin/main.php
- functions.php


Với nhiêu đó là ta đã có một module đơn giản (không có CSDL) có thể hoạt động rồi. Như vậy muốn viết một module đầu tiên ta tạo một thư mục có tên là tên của module trong thư mục modules. Sau đó lần lượt tạo các thư mục, file như trên vào thư mục vừa tạo.
Mình sẽ ví dụ đây là module quanlihs.

Chức năng của các file như sau:

-- file version.php: file này có chức năng khai báo tiêu đề module, các funcs có block, tác giả module, thông tin phiên bản, cấu trúc thư mục trong thư mục uploads.
-- File admin.functions.php: File này thường chứa các function, hằng dùng trong admin
-- File function.php: File này thường chứa các function, hằng dùng cho ngoài site
-- admin/main.php: File này sẽ thể hiện nội dung của module phần admin
-- funcs/main.php: FIle này sẽ thể hiện nội dung (trang chính) của module bên ngoài site.

Thứ tự khởi động một module như sau: Khi module được chạy thì tùy theo admin hay ngoài site mà file admin.functions.php hay file function.php được chạy trước sau đó là các file trong thư mục admin hay funcs được chạy tiếp theo mặc định sẽ là file main.php.
Ta thường thấy url trang web nukeviet (chưa bật rewrite) có dạng http://yourdomain/index.php?lang=vi&nv= ... =listenone
Trong đó lang chính là ngôn ngữ của site, nv là module đang chạy, op chính là funcs đang chạy (ở đây là listenone). Giá trị op này chính là tên của funsc trong thư mục funsc hay admin. Nếu trên url mà khuyết phần op= có nghĩa funcs main.php đang được chạy.

Cấu trúc url như trên là cấu trúc cơ bản. Giá trị op ta có thể thay đổi ví dụ nhưhttp://nukeviet.vn/vi/news/viec-lam/ . Ta sẽ tìm hiểu sau.

Bây giờ chúng ta bắt đầu viết một module đơn giản (không có CSDL) để xuất ra dòng chữ "XIN CHÀO CÁC BẠN" bên trong admin và ngoài site.
Đầu tiên tạo một thư mục (là tên module) trong thư mục modules rồi thêm vào đó các file và thư mục sau:
- admin.functions.php
- version.php
- funcs
- funcs/main.php
- admin
- admin/main.php
- functions.php

Chi tiểt http://nukeviet.vn/phpbb/viewtopic.php?f=117&t=15405

Nguồn: dangdinhtu
Nguồn tin: itgate.vn


Những bài mới hơn

Những bài cũ hơn