WordPress Nâng Cao

Tìm hiểu cách vận hành của mã nguồn WordPress

cách vận hành cảu mã nguồn Wordpress

Cách vận hành của mã nguồn WordPress. Bạn đã biết chưa? Hãy cùng GreenApps tìm hiểu nhé!

Trước khi chúng ta tiến hành làm việc với WordPress nâng cao, chúng ta nên hiểu qua về cách mã nguồn WordPress làm các việc như xử lý dữ liệu, tiếp nhận request truy cập (khi ai đó truy cập hoặc làm một thao tác gì đó trên website được gọi là 1 request). 

Việc hiểu những khái niệm căn bản này rất có ích cho các bạn biết rõ thật sự WordPress là gì, chúng ta có thể làm được gì trong WordPress.

Đầu tiên, chúng ta có thể điểm danh sơ qua một số việc mà mã nguồn WordPress có thể làm được:

  • Blog cá nhân.
  • Trang tin tức, tạp chí.
  • Trang bán hàng.
  • Trang giới thiệu bất động sản.
  • Trang rao vặt.
  • Portfolio điện tử.

Cách thức vận hành của mã nguồn WordPress như thế nào?

1. Về cơ sở dữ liệu của WordPress

Với WordPress các bảng của cơ sở dữ liệu mySQL đã được tự động tạo và thiết lập sẵn một vài giá trị khi chúng ta tiến hành cài đặt website ở bước trên.

Tất cả các dữ liệu được WordPress lưu vào database gồm: nội dung các bài viết ta tạo ra, các thiết lập tham số cho website. 

Rồi sau đó, các tính năng trong mã nguồn sẽ tương tác với các bảng dữ liệu đó và đưa ra ngoài trình duyệt hiển thị dưới dạng HTML thông qua các tập tin đã được thiết lập khuôn mẫu trong theme (ta gọi là template).

2. Cách thức hoạt động của WordPress khi ta truy cập vào websites WordPress

Khi một người truy cập vào website, WordPress sẽ tự động xử lý theo quy trình sau:

Bước 1. Khởi động mã nguồn

Tập tin index.php trong mã nguồn (không phải của theme hay plugin) được tải ra, sau đó nó sẽ truy xuất các tập tin cốt lõi khác như wp-config.php vốn để kết nối đến cơ sở dữ liệu, wp-settings.php… 

Ở bước này, WordPress sẽ kết nối đến cơ sở dữ liệu được thiết lập trong wp-config.php, sau đó sẽ tiến hành tải những tệp chức năng trong mã nguồn như /wp-include/functions.php, /wp-include/options.php… nhằm nạp sẵn các chức năng cần thiết để có thể tiếp nhận những dữ liệu. 

Và cũng trong bước này, toàn bộ các dữ liệu được lưu vào bảng wp_options có giá trị ở cột autoload là true sẽ được lôi ra hết, dù thiết lập đó có được sử dụng hay không. Mục đích của bước này là mang sẵn các tuỳ chọn của website cùng các plugin để hỗ trợ cho các bước sau, đặc biệt là bước tải plugin để nó làm việc chính xác.

Bước 2. Kích hoạt plugin

Các plugin mà bạn đã kích hoạt trong website sẽ được tải ra ngay sau khi mã nguồn WordPress khởi động xong. Bởi vì các tính năng trong WordPress Core được sử dụng trong plugin thường sẽ được gắn vào hookinit (bạn tạm thời hiểu nó là một điểm neo để kích hoạt kịch bản nào đó) nên nó sẽ load ngay sau khi WordPress khởi động là vậy.

Bước 3. Thực thi tập tin functions.php trong theme

Lúc này, WordPress sẽ tiến hành dò tìm đến tập tin functions.php trong theme mà bạn đang sử dụng cho trang web để tải các tính năng mà người tạo ra theme đã khai báo ở đó. 

Vậy làm sao WordPress có thể hiểu được website đang dùng theme nào? Đó là ở bước 1, nó đã kết nối vào database và dựa theo khoá current_theme trong cột option_name tại bảng wp_options. WordPress xác định theme hiện tại thông qua database.

Bước 4. Phân tích truy vấn và khởi tạo truy vấn

Đây là bước quan trọng để website của bạn có thể hiển thị nội dung ra bên ngoài, vì các nội dung sẽ được trả về sau khi các truy vấn gửi vào database. Nếu bạn muốn biết nó phân tích như thế nào thì xem tại đây.

Truy vấn nghĩa là một mệnh lệnh được gửi vào database nhằm lấy các thông tin mà truy vấn đó cần xem. Truy vấn ở đây là truy vấn SQL gửi vào MySQL Server.

Trước tiên, WordPress sẽ chạy hàm wp() được thiết lập trong /wp-include/functions.php vốn để gọi phương thức $wp->main() cho mục đích thiết lập truy vấn. Đối tượng $wp được tạo ra bởi lớp WP trong /wp-include/class-wp.php.

cách thức vận hành cảu mã nguồn WordPress

Lúc này, phương thức $wp->parse_request() sẽ được khởi động cho mục đích phân tích truy vấn dựa theo đường dẫn của website. Vì bạn biết rằng WordPress sẽ tự động sinh truy vấn dựa theo đường dẫn, ví dụ khi chúng ta vào http://domain.com/?p=123 thì WordPress sẽ gửi một truy vấn vào database để lấy dữ liệu của post mang số ID là 123.

Sau khi truy vấn được phân tích, WordPress sẽ làm việc tiếp theo là thiết lập các hàm điều kiện thông qua phương thức $wp_query->parse_query().

Sau đó nó sẽ chuyển các truy vấn đã được tạo ra thành truy vấn bằng các lệnh SQL nhằm gửi đến MySQL để lấy dữ liệu bài viết bằng phương thức $wp_query->get_posts()

Nếu database có dữ liệu, các bài viết sẽ được lấy về sau khi gửi truy vấn và nó sẽ được lưu vào đối tượng $wp_query để nó sử dụng trong các vòng lặp cho việc hiển thị bài viết.

Trong quá trình gửi truy vấn này, nếu nó không tìm thấy dữ liệu thì sẽ phân tích và hiển thị báo lỗi 404.

Và cuối cùng là nó có dữ liệu, thì nó sẽ thiết lập biến $post để sử dụng trong vòng lặp. Biến $post là đối tượng chứa các dữ liệu của bài viết thông qua các thuộc tính. Phần này chúng ta sẽ đào sâu hơn ở phần tìm hiểu sâu về query và vòng lặp.

Bước 5. Thực thi các tập tin khuôn mẫu (template) trong theme

Sau khi nó đã có dữ liệu bài viết và các dữ liệu liên quan mà nó đã làm ở bước 4, thì nó sẽ tiến hành xử lý các tập tin template của theme thông qua cấu trúc template. Sau đó các nội dung và trang chủ của website sẽ được hiển thị dựa theo các template tags dưới dạng HTML.

Tổng kết

Trong bài viết này chúng tôi đã giới thiệu qua về cách thức hoạt động của mã nguồn WordPress. Ngoài ra, các bạn có thể xem thêm những bài viết về WordPress của chúng tôi tại đây

Để lại bình luận

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