Công cụ thành viên

Công cụ trang web


programming4:plugin

Khác biệt

Đây là những khác biệt giữa hai phiên bản của trang.

Liên kết đến bản xem so sánh này

Phiên bản trước của cả hai bênPhiên bản trước
Phiên bản sau
Phiên bản trước
Phiên bản sauPhiên bản sau của cả hai bên
programming4:plugin [2018/02/27 14:33] – [Vị trí plugin và cách đặt tên] hoaquynhtim99programming4:plugin [2018/02/27 15:06] – [Cách viết file thực thi php] hoaquynhtim99
Dòng 16: Dòng 16:
 ===== Cách viết file cấu hình ini ===== ===== Cách viết file cấu hình ini =====
  
 +Có cấu trúc XML dạng như sau
 +
 +<code xml>
 +<?xml version="1.0" encoding="utf-8"?>
 +<plugin>
 +    <info>
 +        <name>Plugin mysql master slave</name>
 +        <author>VinaDes.,Jsc</author>
 +        <website>http://vinades.vn</website>
 +        <description></description>
 +    </info>
 +    <positions>
 + <position>
 +     <id>2</id>
 +     <note>Trước khi gọi các module</note>
 + </position>
 +    </positions>
 +</plugin>
 +</code>
 +
 +Phần info là thông tin của plugin
 +
 +  * name: Tên gọi
 +  * author: Tác giả
 +  * website: Website của tác giả hoặc plugin
 +  * description: Mô tả về plugin
 +
 +Phần positions thiết lập các vị trí được phép đặt plugin trong hệ thống. Nếu plugin được phép đặt nhiều vị trí thì chỉ ra mỗi vị trí được phép trong thẻ ''position''. Trong thẻ ''position''
 +
 +  * id vị trí theo quy ước
 +  * note ghi chú thêm nếu có
 +
 +ID vị trí theo quy ước của NukeViet như sau:
 +
 +  * ''1'' Trước khi kết nối CSDL
 +  * ''2'' Trước khi gọi các module
 +  * ''3'' Trước khi website gửi nội dung tới trình duyệt
 +  * ''4'' Sau khi gọi các module
  
 ===== Cách viết file thực thi php ===== ===== Cách viết file thực thi php =====
  
 +File thực thi php plugin nhìn chung viết rất tự do, người lập trình cần am hiểu sâu về cấu trúc của NukeViet để xử lý tình huống.
 +
 +Cấu trúc cơ bản của file thực thi như sau
 +
 +<code php>
 +<?php
 +
 +/**
 + * @Project NUKEVIET 4.x
 + * @Author VINADES.,JSC <contact@vinades.vn>
 + * @Copyright (C) 2018 VINADES.,JSC. All rights reserved
 + * @License GNU/GPL version 2 or any later version
 + * @Createdate Mon, 29 Jan 2018 07:32:56 GMT
 + */
 +
 +if (!defined('NV_MAINFILE')) {
 +    die('Stop!!!');
 +}
 +
 +// Nội dung code plugin viết vào đây
 +
 +</code>
 +
 +===== Một số chú ý =====
  
  
programming4/plugin.txt · Sửa đổi lần cuối: 2018/02/27 15:54 bởi hoaquynhtim99