Hướng dẫn viết một plugin đơn giản cho WordPress – Phần 1

Published by Việt Coding on

Như các bạn đã biết, WordPress là một mã nguồn blog khá nổi tiếng – theo ý kiến cá nhân của tôi, nó xứng đáng đứng ở vị trí hạng nhất. Với một cộng đồng rộng lớn, WP bây giờ không đơn thuần chỉ là một nền tảng cho blog mà còn là một CMS mạnh mẽ với năng lực tiềm tàng không hạn chế bên cạnh những Joomla, Drupal,… WP có cấu trúc đơn giản hơn nhiều so với Joomla và ít hao tài nguyên hơn Drupal. Mọi thứ đều có thể thực hiện được với WP. Bạn cũng có thể mở rộng WP bằng cách viết thêm cho nó những plugin hoặc thiết kế một theme đặc sắc, không đụng hàng.

Trong bài viết này, tôi sẽ cùng các bạn xem xét làm cách nào để viết một plugin Hello World cho WP, không như bạn nghĩ, nó đơn giản đến mức đáng ngạc nhiên khi mà bạn đã nắm được yếu tố cơ bản của nó. Tất cả những gì bạn cần ở đây là khả năng lập trình mã PHP, truy vấn MySQLHTML cơ bản.

Trước khi đi vào viết một plugin, bạn hãy nhớ một vài lưu ý sau:

1. Luôn đặt một cái tên gợi nhớ, sát với chức năng của plugin mà bạn viết, tránh “đụng hàng” với những plugin khác.

2. Đừng quên ghi chú (comment) bất cứ đâu vào bất cứ lúc nào trong mã nguồn mà bạn cảm thấy cần thiết. Điều này sẽ giúp bạn gợi nhớ lại sau một thời gian dài xem lại mã nguồn. Hoặc khi bạn có ý định chia sẻ cho cộng đồng cùng phát triển, những comment đó sẽ rất hữu ích cho người kế thừa đi sau.

3. Bạn nên kiểm tra (test) plugin trên localhost với phiên bản WP mới nhất, trước khi trình làng một cách chính thức.

Tên và những tập tin (files) của plugin

Đặt một cái tên duy nhất, viết tài liệu mô tả chức năng của plugin (ReadMe) là một phần không thể thiếu khi bạn viết một plguin

Dù rằng WP cho phép bạn đặt trực tiếp tập tin mã PHP vào thư mục wp-contentplugins nhưng để tách biệt rõ ràng cho người dùng, hãy đặt tất cả các file của plugin vào trong một thư mục có tên gợi nhớ, tên duy nhất càng tốt.

File ReadMe.txt chứa thông tin về plugin của bạn và thuận tiện nếu bạn có ý định chia sẻ cho cộng đồng WP thông qua kho plugin của WP. Hãy xem một ví dụ mẫu về ReadMe.txt

Nào, chúng ta hãy bắt tay vào viết plugin đầu tiên.


Việt Coding

Là một người đam mê lập trình, tôi vọc vạch đủ thứ liên quan đến lập trình cho thoả chí tò mò. Hiện làm chủ yếu ở mảng phát triển ứng dụng di động cho iOS và Android với React Native. Thỉnh thoảng vọc vạch mấy thứ liên quan đến Internet of Things như Smart Home. Đang nghịch mấy con Raspberry Pi và thấy nó cũng thú vị :)

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

Leave a Reply

Avatar placeholder

Your email address will not be published. Required fields are marked *