Xây dựng Plugin căn bản
Giáo trình: Lập trình Wordpress chuyên nghiệp
Biên soạn: ZendVN Group
Website: www.zend.vn
Nội dung của bài học
o Tạo ra nền tảng vững chắc Plugin.
o Xác định đường dẫn tập tin và thư mục.
o Tìm hiểu về chức năng Active và Deactivate.
o Tìm hiểu về phương thức uninstall plugin.
o Cách viết code chuẩn trong WP
Tạo một Plugin mới
o Plugin có thể là một tập PHP duy nhất hoặc một tập hợp các tập tin trong một thư mục
o Tùy theo mục đích của Plugin mà chúng ta chọn 1 trong 2 kiểu tạo phía trên
Đặt tên cho Plugin mới
o Đặt tên cho một Plugin là một vấn đề khá quan trọng
o Tên plugin nên liên qua đến vấn đề Plugin này xử lý
o Tên plugin phải chưa tồn tại trong hệ thống Plugin của Worpdress
o Tìm hiểu trước tại url: http://wordpress.org/plugins/
Tạo thư mục cho Plugin
o Tạo một thư mục để chứa plugin mới
o Để dễ dàng nâng cấp và bổ xung thêm chức năng trong tương lai
o Không nên có khoảng trắng và dấu gạch dưới trong tên của thư mục
Tạo tiền tố cho Plugin
o Khi chúng ta tạo một Plugin để trách bị trùng tên chúng ta nên tạo ra một tiền tố cho Plugin mới
o Cách tạo tiền tố: <tên bạn>_<tên plugin>_
o Ví dụ: ZendVN tạo Shopping plugin vậy tiền tố sẽ là:
o zendvn_sp_
o Nên sử dụng tiền tố này cho các biến và hàm trong Plugin của bạn
Cấu trúc thư mục Plugin
o Tạo một thư mục có cấu trúc hợp lý sẽ giúp bạn nâng cấp Plugin dễ dàng vào nhanh chóng.
o /unique-plugin-name unique-plugin-name.php — Tập tin PHP chạy chính của Plugin
uninstall.php — Tập tin uninstall plugin của bạn
/js — Thư mục chứa các tâp tin JavaScript
/css — Thư mục chứa các tâp tin stylesheet
/includes — Thư mục chứa các tâp tin PHP khác
/images — Thư mục chứa các tâp tin hình ảnh của plugin
Tạo phần Header
o Header Plugin là yêu cầu duy nhất với Plugin để nó hoạt động trong WordPress
Xác định đường dẫn (Path)
o Có 2 loại đường dẫn:
o Đường dẫn tuyệt đối (Local path):
Là đường dẫn vật lý đến các tập tin và thư mục trên máy của chúng ta (VD: C:\window)
o Đường dẫn tương đối (URL path):
Là đường dẫn mà người sử dụng truy cập vào máy chủ của chúng ta thông qua các trình duyệt web
Hàm xác định Path trong WP
o plugin_dir_path( ) – đường dẫn vật lý thư mục /plugins
o plugins_url() - đường dẫn URL thư mục /plugins
o includes_url() - đường dẫn URL đến thư mục /wp-includes
o content_url() - đường dẫn URL đến thư mục /wp-content
o admin_url() - đường dẫn URL đến thư mục /wp-admin
o site_url() - Đường dẫn URL của website
o home_url() - Đường dẫn URL home của website
Phương thức Active plugin
o Cú pháp:
register_activation_hook( $file, $function );
o Các thông số:
$file - (string) (bắt buộc) - Đường dẫn đến tập tin chính của Plugin
$function - (string) (yêu cầu) - Tên hàm, hàm này sẽ thực hiện khi plugin được kích hoạt.
Chức năng chính của Active plugin
o Tạo các giá trị mặc định và lưu vào bảng _option trong database của WP.
o Tạo các bảng mới trong database để chứa các dữ liệu Plugin bạn tạo ra.
Ví dụ về hàm Active plugin
<?php
register_activation_hook( __FILE__,
'zendvn_myplugin_install' );
function zendvn_myplugin_install() {
//} Thuc hien nhung chuc nang can
//thiet khi Plugin duoc active
}
?>
Ví dụ demo
1. Tạo các giá trị mặc định và lưu vào bảng wp_options trong database của WP.
2. Tạo các bảng mới trong database để chứa các dữ liệu Plugin bạn tạo ra.
Phương thức Deactive plugin
o Cú pháp:
register_ deactivation_hook( $file, $function );
o Các thông số:
$file - (string) (bắt buộc) - Đường dẫn đến tập tin chính của Plugin
$function - (string) (yêu cầu) - Tên hàm, hàm này sẽ thực hiện khi plugin được vô hiệu hóa.
Chức năng chính của Deactive plugin
o Hàm này sẽ vô hiệu hóa Plugin của bạn
o Thay đổi một số giá trị trong bảng wp_options (nếu thực sự cần thiết)
o Có thể không cần gọi hàm này nếu bạn thực sự không làm điều gì trong quá trình vô hiệu hóa plugin
Ví dụ về hàm Deactive plugin
<?php
register_deactivation_hook(
_FILE__,'zendvn_myplugin_deactive' );
function zendvn_myplugin_deactive() {
//do something
}
?>
Hàm Uninstall
o Cú pháp:
register_uninstall_hook( $file, $function );
o Các thông số:
$file - (string) (required) - Đường dẫn đến tập tin chính của Plugin.
$function - (string) (required) - Hàm để thực thi khi Plugin được gỡ bỏ
Chức năng chính của Uninstall plugin
o Thực hiện các nhiệm vụ khi chúng ta xóa Plugin ra khỏi hệ thống: Xóa các giá trị mặc định đã lưu vào bảng _option trong
database.
Xóa các bảng đã tạo trong database trong quá trình cài đặt Plugin của bạn.
o Hệ thống WP sẽ giúp bạn xóa thư mục Plugin của bạn
Ví dụ về hàm Uninstall plugin
<?php
register_uninstall_hook(
__FILE__,'zendvn_myplugin_uninstall' );
function zendvn_myplugin_uninstall() {
//do something
}
?>
Unstall plugin
o Ngoài việc sử dụng phương thức:
register_uninstall_hook( $file, $function );
o Chúng ta có thể sử dụng một tập tin có tên
uninstall.php;
Ví dụ về tập tin uninstall.php
<?php
if( !defined( 'WP_UNINSTALL_PLUGIN' ) )
exit ();
//Chạy các hàm xóa cấu hình
//và các bảng đã tạo ra trong Database
?>
Cách viết mã chuẩn trong WP
o PHP Coding Standards http://make.wordpress.org/core/handbook/coding-standards/php/
o HTML Coding Standards http://make.wordpress.org/core/handbook/coding-standards/html/
o CSS Coding Standards http://make.wordpress.org/core/handbook/coding-standards/css/
o JavaScript Coding Standards http://make.wordpress.org/core/handbook/coding-standards/javascript/