Plugin
Plugin là một phần mềm, hay nói cách khác nó là một hay nhiều tập tin PHP có chứa nhiều dòng lệnh hoặc hàm (function) do người dùng viết ra. Trong đó ngoài các hàm do người dùng tạo ra thì còn các hàm kế thừa từ thư viện có sẵn của SkillDo.
Create Plugin
This widget will be created in /views/<current active theme>/plugins/<plugin name>
.
thư mục plugin của bạn phải được đặt bên trong thư mục plugins với đường dẫn như bên trên, sau đó các thư mục con và các tập tin sẽ được đặt nằm trong thư mục gốc plugin của bạn.
Name Plugin
Tên của thư mục cũng là tên của plugin mà bạn viết thường không có dấu Tiếng Việt và các từ được nối với nhau bằng dấu gạch ngang.
Tên của plugin phải rõ ràng và không được trùng tên với các plugin đã có sẵn, trước tiên bạn nên tìm kiếm trên store xem tên bạn muốn đặt có tồn tại hay chưa.
Tên thư mục và tên tập tin chính của plugin phải giống nhau.
Register Plugin
Để hệ thống nhận định đây là một plugin bạn cần khai báo cho hệ thống biết đây là một plugin bằng cách mở main file plugin và thêm ghi chú vào
<?php
/**
Plugin name : Demo Plugin
Plugin class : example_pln_demo
Plugin uri : http://sikido.vn
Description : Đây là plugin đầu tiên mà tôi viết dành riêng cho Skilldo, chỉ để học tập mà thôi.
Author : Tên tác giả
Version : 1.0.0
*/
Plugin Class
Sau bước trên bạn đã khai báo thành công plugin với hệ thống, nhưng để tiến hành kích hoạt và sử dụng bạn cần tạo một class của plugin.
Tên của class này được bạn khai báo phía trên phần Plugin class
class example_pln_demo {
private $name = 'example_pln_demo';
// widget constructor
public function __construct(){
}
public function active() {
}
public function uninstall() {
}
}
Các chức năng cụ thể
Function | Description |
---|---|
__construct | Chạy các phần code cần chạy khi plugin đang active |
active |
Hàm này chịu trách nhiệm cho việc cài đặt plugin khi active plugin, ví dụ như: Cài đặt database Cài đặt option Cài đặt dữ liệu mẫu |
uninstall |
Hàm này chịu trách nhiệm cho việc gở cài đặt plugin khi không còn nhu cầu sử dụng plugin nữa. ví dụ như: Xóa database Xóa option của plugin Xóa dữ liệu rác do plugin tạo ra |