Hướng dẫn viết một plugin đơn giản cho WordPress – Phần 1
Những cái cơ bản của một plugin:
Trái tim của một WP plugin là 2 hàm dưới đây ( thông thường được gọi là “hooks“)
add_action ($tag, $func) documentation
add_filter ($tag,$func) documentation
Phân biệt rõ sự khác nhau của 2 hàm trên là điều rất quan trọng:
- add_action –> Gọi thực thi một hàm tại một hoặc nhiều vị trí trong quá trình WP thực thi.
- add_filter –> Lọc dữ liệu. Như là: dấu nháy đơn trước khi thực thi câu lệnh SQL trên CSDL hoặc trong khi trả kết quả cho trình duyệt web hiển thị.
Bạn nên tham khảo thêm WordPress Plugin API để hiểu rõ hơn.
Thông tin của Plugin
Mở file hello-world.php và chèn đoạn comment này vào ngay dòng đầu tiên:
< ?php
/*
Plugin Name: Hello-World
Plugin URI: http://yourdomain.com/
Description: A simple hello world wordpress plugin
Version: 1.0
Author: Shinichi 's Blog
Author URI: http://yourdomain.com
License: GPL
*/
?>
Copy thư mục Hello-World plugin vào wordpress > wp-content > plugins. Vào phần Admin > Plugins bạn sẽ thấy plugin Hello-World trong danh sách như hình
Plugin này sẽ làm tiếp công việc gì ?
Nó sẽ in ra dòng chữ “Hello World !” khi chúng ta gọi nó từ đâu đó trong các tập tin theme template của WP. Để làm điều đó, bạn hãy chèn hàm add_action() vào ngay dưới phần thông tin của plugin trong file hello-world.php
< ?php
/*
Plugin Name: Hello-World
Plugin URI: http://yourdomain.com/
Description: A simple hello world wordpress plugin
Version: 1.0
Author: Balakrishnan
Author URI: http://yourdomain.com
License: GPL
*/
/* This calls hello_world() function when wordpress initializes.*/
/* Note that the hello_world doesnt have brackets.*/
add_action('init','hello_world');
function hello_world()
{
echo "Hello World !";
}
?>
Như vậy, chúng ta đã gần đạt đến kết quả đầu tiên với một plugin đơn giản chỉ với vài dòng lệnh. Với đoạn mã trên có thể dịch nôm na như sau: khi WP khởi chạy, hàm add_action() sẽ gọi hàm hello_world() của chúng ta.
7 Comments
Tinh · 29/01/2010 at 15:17
Quyết tâm đọc hết các phần để làm 1 cái riêng cho blogviet, bác nhớ viết hết và chi tiết nhé, em là gà mờ lắm đó:-”
.-= Tinh´s last blog ..Yahoo: Công Cụ Tìm Kiếm Mặc Định Của Firefox Trên Ubuntu =-.
Shinichi · 29/01/2010 at 15:28
@Tinh
Hì hì, chưa rảnh để dịch + biên tập phần 2 nữa. Bác thông cảm chờ vậy
:-”
.-= Shinichi´s last blog ..10 plugins giúp bảo vệ blog WordPress của bạn =-.
TrongCV · 01/11/2012 at 15:09
Dear Bạn. Hiện tại mình củng đang tìm hiểu wp và cung viết theme đơn giản. Trước kia mình làm web asp.net và viết các trang web với nghiệp vụ khá phức tạp. Khi làm việc với wp + theme wp thì mình thấy nó thực sự đơn giản và rất dễ hiểu + nhẹ nhàng. Chỉ có một điều là mình đang loay hoay không biết làm sao viết được 1 ứng dụng như bên .net mà mình đã làm. ex: tao thêm table trong db,truy vấn db, tương tác với người dùng phức tạp…. thì làm thế nào?. Phải chăng là mình phải viết plugin riêng để dùng.
Mong bạn reply!
Chân thành cảm ơn!
TrongCV
Việt Coding · 04/11/2012 at 19:07
Bạn xem thử bài này
http://codex.wordpress.org/Creating_Tables_with_Plugins
Sau đó xem thêm các bài về query.
Thân,
jenemy · 15/03/2013 at 08:17
Bài viết hay quá, bao giờ mới có tiếp phần 2 vậy bác ơi 🙂
Aaron Tran · 19/11/2013 at 15:29
Khi nào có phần 2 vậy bác
Em đợi mãi
Hix
Hưng · 11/01/2014 at 17:10
Quá hay, cám ơn bạn đã viết một bài viết hay như này. Mình lúc đầu rất bỡ ngỡ vì chả biết viết plugin như nào nhưng nay đã bắt đầu có thể bắt tay vào viết plugin được rồi. Cám ơn bạn nhé, mong đón đọc những bài viết tiếp theo của bạn