5. Giới thiệu về WordPress plugin -P1

Plugin & Themes là hai thành phần chính tạo nên sức mạnh cho WordPress , nhưng có mấy ai hiểu được plugin là gì đó cũng là lý do bài này được ra đời.

Trong khuôn khổ bài ngày hôm nay tôi sẽ hướng dẫn các bạn tìm hiểu 3 phần chính.

· Thế nào là một plugin

· Giới thiệu các API có sẵn trong WordPress

· Vị trí plugin được load trong quá trình xử lý

Có thể nói Plugin giống như sự bổ sung sức mạnh chi tiết cho WordPress, bạn muốn SEO cho website cũng cần Plugin, muốn tạo Popup cũng cần dùng Plugin hoặc muốn tạo tính năng của các trang bán hàng cũng phải sử dụng Plugin.

1/ Thế nào là một plugin?

Một plugin trong WordPress là những file chứa mã php, giúp cho chúng ta mở rộng hoặc thay đổi những chức năng có sẵn trong WordPress. Plugin có thể rất đơn giản nhưng cũng có plugin rất là phức tạp.

Plugin đơn giản là những plugin không cần tương tác với cơ sở dữ liệu, ví dụ như là plugin tạo ra các icons social, chèn link vào click là nó truy cập tới facebook được chỉ định.

Trái ngược với plugin đơn giản là những plugin phức tạp có tương tác với cơ sở dữ liệu, hỗ trợ các bạn tạo ra các trang shopping, social network…vvv

Hiện nay WordPress plugin đang có số lượng có thể là nhiều đến độ bạn không thể nào đếm nổi nó, chỉ mới tính về các plugin miễn phí thì con số đã lên tới hàng ngàn rồi, ngoài ra còn nhiều plugin trả phí đang được đăng bán rải rác trên các trang seller phổ biến trên toàn thế giới.

Thật ra nếu bạn tinh ý hơn thì trong hệ thống WordPress đang hiện hữu một plugin đơn giản, đó là plugin hello, nhiệm vụ của plugin này chỉ hiển thị một câu thông báo trong trang quản trị.

Mục này xem như ổn rồi hen, tiếp theo sẽ tìm hiểu đến mục WordPress API

2/ Giới thiệu các API có sẵn trong WordPress

API là từ viết tắt của Application programming interface có nghĩa là giao diện lập trình ứng dụng. Nói đơn giản thì API là tập hợp các hàm có sẵn trong một hệ thống nào đó.

Trong WordPress thì có rất nhiều API hỗ trợ cho plugin của bạn xử lý một vấn đề nào đó. Ví dụ điển hình là trong WordPress có Plugin API, Widget API, Shortcode API, Quicktags API và còn nhiều API khác, mỗi API hoặc các hàm có sẵn trong core của WordPress giúp cho plugin của bạn tương tác với hệ thống WordPress theo nhiều cách khác nhau.

Nếu bạn muốn biết danh sách của toàn bộ API mà wordpress đang hỗ trợ thì bạn hãy truy cập vào đường dẫn này.

Link: http://codex.wordpress.org/WordPress_APIs

Trong series này thì tôi sẽ hướng dẫn bạn tìm hiểu gần như toàn bộ API trong hệ thống của WordPress, vì tôi muốn sau khi bạn theo dõi xong series này thì tệ nhất cũng biết cách sử dụng API để tương tác với plugin theo ý của bạn.

Tôi sẽ liệt kê ra danh cách các API quan trọng và cần thiết trong series này.

Plugin API

Đầu tiên là Plugin API bao gồm những phương thức nào? Plugin là một tâp hợp các hook, vấn đề về phần này tôi sẽ trình bày ở các bài sau.

Bạn chỉ cần quan tâm hook là những cái móc nối để bạn gắn những cái plugin vào và mở rộng chúng ra.

Plugin API cung cấp cho bạn những cái hook và cho phép plugin của bạn truy cập vào hệ thống WordPress.

Có hai loại hook khác nhau, đó là action hook & filter hook.

Action Hook: Cho phép bạn kích hoạt các mã plugin bổ sung tại các vị trí do bạn chỉ định trong quá trình làm việc với WordPress.

Filter Hook: Có nhiệm vụ giúp bạn thay đổi nội dung của các bài viết trước khi lưu nó vào database.

Widget API

Nó hỗ trợ bạn tạo ra các widget nằm ở trên website, bạn có thể thấy rõ điều này bằng cách vào website của bạn, vùng meta, vùng category, vùng comment là những widget mặc định mà WordPress hỗ trợ chúng ta.

Bạn hoàn toàn có thể sử dụng Widget APi để tạo ra các widget theo ý đồ của bạn.

Shortcode API

Nó là một đoạn mã ngắn mà bạn có thể chèn nó vào phần nội dung của phần post hoặc phần pages của hệ thống WordPress.

Điều này có nghĩa là, khi bạn post nội dung mới và có chèn shortcode vào thì WordPress sẽ đọc cái shortcode và nó sẽ gọi đến plugin tạo ra shortcode và nó hiển thị theo mục đích của shortcode. Chà nói vậy hiểu được mới lạ đấy. vì đây là series dạng text nên tôi cũng gặp khó khăn trong việc trình bày vấn đề để các bạn dễ hiểu.

HTTP API

Nó giúp chúng ta nhận dữ liệu hoặc gửi dữ liệu từ website của bạn đến một site khác. Để có cái cái nhìn khách quan hơn về API này thì bạn truy cập vào trang quản trị, vào phần plugin và chọn Addnew.

Ở khu vực này hiển thị một số plugin mà wordpress khuyên chúng ta nên dùng, vậy câu hỏi đặt ra ở đây là, các plugin này được hiển thị bằng cách nào ?

Bởi vì danh sách plugin này không hề tồn tại trong source của WordPress mà chúng ta dowload về, mà nó xuất phát từ trang chủ wordpress.org, việc mà nó lấy được dữ liệu từ site mẹ về thì chính nhờ HTTP API, chính sự hiện hữu của API này thì khi WordPress thông báo nâng cấp hệ thống thì các bạn cũng sẽ nhận được thông báo từ nó.

Settings API

Là một tập hợp hàm hỗ trợ cho bạn thiếp lập các giá trí nằm bên trong menu settings ở trang quản trị. Các bạn truy cập vào trang quản trị vào menu gerenal sẽ thấy một số textbox đó là những phần tử của settings, toàn bộ phần tử này được lưu trong table options trong hệ thống cơ sở dữ liệu của WordPress.

Options API

Nó sẽ cung cấp cho bạn những phương thức, và những phương thức này sẽ được sử dụng để lưu dữ liệu vào table options ở trong cơ sở dữ liệu của WordPress. API này thường được sử dụng song hành với Settings API. Để tạo ra những trang mới nằm trong khu vực trang quản trị.

Dashboard widget API

Là những phương thức giúp bạn tạo ra những khối trong trang quản trị. Có nghĩa là bạn có thể lập trình ở trang chính thêm khối hiển thị danh sách đơn hàng, bài viết được xem nhiều nhất và còn hơn thế nửa.

Rewrite API

Nó có nhiệm vụ giúp bạn thay đổi những đường dẫn và làm cho chúng trở nên thân thiện hơn với các bộ máy tìm kiếm như là google, bing,yahoo.

Transient API

Nhiệm vụ của API này hỗ trợ bạn tạo ra những dữ liệu tạm lưu sẵn ở trong hệ thống để giảm tải quá trình xử lý dữ liệu của hệ thống WordPress. Làm cho website của bạn chạy nhanh hơn. Nó tương tự như kỹ thuật caching trong php.

Database API

Là sự kết hợp của nhiều API khác nhau. Những API đó sẽ hỗ trợ bạn trong quá trình lấy dữ liệu từ database của WordPress ra ngoài. API này sẽ được trình bài riêng vì nó có quá nhiều phương thức quan trọng.

Ngoài ra còn một số API khác mà tôi không thể nào trình bày hết trong bài này được, bạn sẽ lần lượt trải nghiệm các API này ở các bài sau của tôi.

3/ Vị trí plugin được load trong quá trình xử lý

Bây giờ tới phần quan trọng nhất trong bài hôm nay, chúng ta sẽ tìm hiểu những plugin sẽ được load ở vị trí nào trong quá trình xử lý.

Tôi có một sơ đồ xử lý đơn giản của WordPress như sau.

Nhìn vào sơ đồ trên, nếu bạn nào là dân lập trình sẽ hiểu được luồng đi dữ liệu ra sao liền, nhưng tôi cũng nói sơ qua luôn về cách vận hành sơ đồ này.

Đầu tiên khi bạn gõ lên thanh trình duyệt địa chỉ của một website được xây dựng bằng mã nguồn của WordPress thì nó sẽ load các cấu hình nằm trong file wp-config, sau đó nó load tiếp các cấu hình nằm trong cơ sở dữ liệu của WordPress. Khi load xong 2 phần này thì nó sẽ gọi tới function(hàm) những hàm xử lý chính trong core của WordPress. Thực hiện xong việc gọi hàm thì nó sẽ nạp toàn bộ plugin vào hệ thống.

Bạn nên lưu ý rằng, ở bước này nó đã nạp plugin rồi nhưng các plugin đó vẫn chưa hoạt động. bởi vì các plugin chỉ hoat động khi hệ thống WordPress gọi đến action hook hoặc các filter hook.

Sau đó nó sẽ nạp tiếp những phương thức chính nằm trong file pluggable.php, file này nằm trong folder wp-includes. Tiếp theo nó sẽ nạp phần định dạng ngôn ngữ, và rồi nạp tiếp phần themes đã đuọc xử lý và hiển thị tất cả nội dung website thông qua page content.

Vậy thì xem như bạn đã hiểu được quá trình plugin được nạp khi nào cũng như WordPress vận hành dữ liệu ra sao.

Kết bài

Đây là một bài khá là quan trọng mà tôi muốn các bạn cần phải nắm rõ, vì nếu như không thấu hiểu hết kiến thức trong bài này, thì tôi cam đoan một điều rằng bạn sẽ không bao giờ theo kịp kiến thức ở các bài sau. Vì chúng sẽ có một mối liên kết nhất định. Xem như tôi vừa Giới thiệu về WordPress plugin -P1, và nhiều điều thú vị hơn sẽ chờ bạn ở P2.

Series Navigation<< Cấu hình WordPress nâng caoGiới thiệu về WordPress plugin -P2 >>

Nguồn: laptrinhweb.org

Last updated