Bạn đã bao giờ tự hỏi làm thế nào WordPress thực sự hoạt động đằng sau hậu trường? Đối với hầu hết người dùng, có vẻ đơn giản bởi vì bạn nhập URL và một trang tải trong vài giây, nhưng có rất nhiều điều xảy ra đằng sau hậu trường. Trong hướng dẫn này, chúng tôi sẽ giới thiệu cho bạn về cách thức WordPress hoạt động đằng sau hậu trường và chúng tôi cũng đã tạo ra một cách dễ dàng để làm theo Infographic.
Tại sao Bạn nên Tìm hiểu Làm thế nào WordPress Works?
WordPress là một phần mềm nguồn mở, có nghĩa là bất kỳ ai cũng có thể nghiên cứu mã của mình và viết các ứng dụng (plugin) và mẫu (chủ đề) của riêng họ cho nó.
Học cách WordPress hoạt động và những gì diễn ra sau hậu trường có thể giúp bạn hiểu bạn có thể làm gì với nó. Bạn có thể tìm hiểu về việc cải thiện hiệu suất của WordPress và viết mã nguồn tốt hơn cho các dự án của riêng bạn.
Hướng dẫn này sẽ hướng dẫn bạn toàn bộ quá trình từng bước. Chúng tôi sẽ bắt đầu từ khi người dùng yêu cầu một trang và kết thúc khi trang đó được tải đầy đủ.
Sẳn sàng? Băt đâu nao.
Bạn cũng có thể làm theo hướng dẫn bằng văn bản dưới đây để biết thêm chi tiết.
1. Tải tệp wp-config.php
Wp-config.php là tệp cấu hình WordPress. Nó thiết lập các biến toàn cầu cho một trang WordPress và chứa thông tin cơ sở dữ liệu WordPress của bạn. Đây là tệp WordPress đầu tiên tải vì lý do rõ ràng. Tìm hiểu thêm về tệp wp-config.php và cách chỉnh sửa nó.
2. Thiết lập các giá trị mặc định
Sau khi tải tệp wp-config.php, WordPress sẽ chuyển sang đặt hằng số mặc định. Điều này bao gồm thông tin như vị trí tải WordPress mặc định, kích thước tệp tối đa và các hằng số mặc định khác được đặt trong tệp wp-config.php.
3. Tải tệp tin advanced-cache.php
Nếu tệp tin advanced-cache.php tồn tại trên trang web của bạn, sau đó WordPress sẽ tải tệp đó lên kế tiếp. Tệp này hoạt động như một tệp thả xuống và được sử dụng bởi một số plugin phổ biến cụ thể là WordPress caching plugins. Nếu trang web của bạn đang sử dụng tệp này, thì bạn sẽ thấy một mục mới trên màn hình trình cắm được gọi là Drop-in.
4. Tải tệp wp-content / db.php
WordPress cho phép các nhà phát triển tạo các lớp trừu tượng cơ sở dữ liệu riêng của họ và nạp chúng vào tệp tin db.php được đặt bên trong thư mục wp-content. Nó thường được sử dụng bởi các plugin WordPress caching để cải thiện hiệu suất cơ sở dữ liệu. Nếu trang web của bạn có tệp này hiện tại, sau đó WordPress sẽ tải nó.
5. Kết nối MySQL và Chọn Cơ sở dữ liệu
WordPress bây giờ có đủ thông tin để tiếp tục. Nó sẽ di chuyển để kết nối với máy chủ MySQL và chọn cơ sở dữ liệu.
Nếu WordPress không thể kết nối với cơ sở dữ liệu, khi đó bạn sẽ thấy lỗi “Lỗi kết nối cơ sở dữ liệu” và WordPress sẽ thoát ngay tại đây.
Nếu mọi thứ hoạt động tốt, thì nó sẽ chuyển sang các bước tiếp theo.
6. Nạp đối tượng-cache.php hoặc wp-includes / cache.php File
WordPress sẽ tìm file object-cache.php. Nếu nó không tồn tại, sau đó WordPress sẽ chuyển sang nạp tệp wp-includes / cache.php.
7. Nạp wp-content / sunrise.php File
Nếu đó là một mạng nhiều điểm, sau đó WordPress sẽ tìm tập tin sunrise.php nếu nó tồn tại trong thư mục wp-content.
8. Tải thư viện bản địa hoá
WordPress sẽ tải thư viện l10n.php trong thư mục wp-includes. Tập tin này tải hệ thống bản địa hoá của WordPress, tải bản dịch, đặt địa phương, v.v.
9. Tải các plugin Đa điểm
Nếu đó là một mạng đa điểm, sau đó WordPress bây giờ sẽ tải các plugin đa điểm. Tìm hiểu thêm về cách plugin hoạt động trên mạng nhiều điểm của WordPress.
10. Thực hiện hành động ‘muplugins_loaded’
Hành động muplugins_loaded hiện đang chạy bởi WordPress. Tác vụ này chỉ có sẵn cho các plugin được kích hoạt trên mạng trên một loạt các WordPress multisite.
11. Tải các Plugin hoạt động
WordPress bây giờ sẽ tải tất cả các plugin tích cực trên trang web. Nó thực hiện điều đó bằng cách tìm trong mục active_plugins trong bảng tùy chọn của cơ sở dữ liệu WordPress của bạn. Điều này cho phép WordPress để bỏ qua các plugin được cài đặt trên trang web của bạn nhưng không kích hoạt.
12. Tải tệp tin pluggable.php
Tệp pluggable.php có chứa các chức năng có thể được định nghĩa lại bởi các plugin WordPress. WordPress sẽ xem các chức năng bên trong tệp tin này đã được định nghĩa bởi một plugin khác. Nếu không, nó sẽ xác định những chức năng đó.
13. Thực hiện hành động ‘plugins_loaded’
WordPress bây giờ sẽ chạy các hành động ‘plugins_loaded’. Nó cho phép các nhà phát triển móc các chức năng của họ để chạy sau khi tất cả các plugin tích cực đã được nạp.
14. Nạp lại Quy tắc
WordPress bây giờ sẽ tải các quy tắc viết lại. Các nguyên tắc viết lại này giúp WordPress sử dụng các URL thân thiện với SEO.
15. Khởi tạo $ wp_query, $ wp_rewrite, $ wp
Tại thời điểm này WordPress tải các đối tượng sau:
$ wp_query: Trường hợp toàn cầu chứa lớp WP_Query. Nó cho WordPress biết nội dung nào được yêu cầu trong một định dạng truy vấn WordPress điển hình.
$ wp_rewrite: Trường hợp toàn cầu chứa lớp WP_Rewrite của bạn. Nó chứa các quy tắc viết lại và các chức năng của bạn mà cho WordPress mà URL để sử dụng để hiển thị nội dung yêu cầu.
$ wp: Trường hợp toàn cầu của lớp WP có chứa các chức năng sẽ phân tích cú pháp yêu cầu của bạn và thực hiện truy vấn chính.
16. Thực hiện hành động ‘setup_theme’
WordPress sẽ chuyển sang chạy hành động ‘setup_theme’. Tác vụ này chạy trước khi chủ đề WordPress của bạn được tải.
17. Tải các tập tin functions.php của Child Theme
Các tệp functions.php hoạt động như plugin và được sử dụng trong các chủ đề WordPress để thêm các tính năng chủ đề cụ thể vào trang web của bạn. Nếu bạn đang sử dụng một chủ đề con, sau đó WordPress sẽ tải tập tin functions.php của chủ đề con của bạn.
Nếu không, nó sẽ tiếp tục và tải tập tin functions.php chủ đề đang hoạt động của bạn.
18. Nạp tập tin functions.php của Parent Theme
Nếu bạn đang sử dụng một chủ đề con, sau đó WordPress sẽ tải tệp tin functions.php của chủ đề gốc của bạn.
19. Thực hiện hành động ‘after_setup_theme’
Hành động này chạy sau khi WordPress đã thiết lập chủ đề và các chức năng chủ đề được nạp. Đây là hành động đầu tiên có sẵn cho chủ đề.
20. Thiết lập đối tượng người dùng hiện tại
Tại thời điểm này, WordPress tải đối tượng người dùng hiện tại. Nó cho phép WordPress quản lý yêu cầu phù hợp với vai trò và khả năng của người dùng.
21. Thực hiện hành động ‘init’
WordPress cho đến nay đã tải tất cả các thông tin quan trọng mà nó cần. Bây giờ nó khởi động hành động ‘init’.
Hành động này cho phép các nhà phát triển thêm mã cần được thực hiện sau khi WordPress đã tải tất cả các thông tin đã đề cập trước đó.
22. Thực hiện hành động ‘widget_init’
Các widget_init
hành động cho phép các nhà phát triển đăng ký vật dụng và chạy mã mà họ cần để chạy vào thời điểm này.
23. Chạy wp ()
WordPress bây giờ gọi wp ()
chức năng nằm ở wp-includes / functions.php
tập tin. Nó thiết lập các truy vấn WordPress toàn cầu $ wp, $ wp_query, $ wp_the_query và sau đó gọi $ wp-> main.
24. Yêu cầu phân tích cú pháp
Bây giờ WordPress có tất cả các thông tin cần thiết để phân tích cú pháp yêu cầu người dùng. Bắt đầu bằng cách kiểm tra các quy tắc viết lại để phù hợp với yêu cầu của người dùng.
Và sau đó chạy bộ lọc truy vấn biến, yêu cầu hành động móc, và gửi yêu cầu tiêu đề.
25. Chạy truy vấn
Nếu không có nội dung nào khớp với truy vấn, thì WordPress sẽ đặt biến is_404.
Nếu không, WordPress sẽ tiếp tục tải các biến truy vấn.
Sau đó nó sẽ chạy WP_Query-> get_posts ().
Tiếp theo, nó kích hoạt DO_ACTION_REF_ARRAY ‘pre_get_posts’ với đối tượng WP_Query.
WordPress sẽ chạy applic_filters để dọn dẹp truy vấn và chạy một số kiểm tra cuối cùng.
Bây giờ nó lấy các bài viết từ cơ sở dữ liệu và áp dụng bộ lọc posts_results và the_posts.
Phần truy vấn kết thúc bằng WordPress trả lại các bài đăng.
26. Do Action ‘template_redirect’
WordPress sẽ chạy template_redirect
hoạt động. Hook này chạy ngay trước khi WordPress xác định trang mẫu nào cần tải.
27. Tải mẫu nguồn cấp dữ liệu
Nếu nội dung yêu cầu là một nguồn cấp dữ liệu RSS, sau đó WordPress tải mẫu nguồn cấp dữ liệu.
28. Tải mẫu
WordPress bây giờ sẽ tìm tệp mẫu dựa trên hệ thống phân cấp mẫu WordPress. Sau đó tải mẫu mà thường chứa một vòng lặp WordPress.
29. Do ‘tắt máy’
Chỉ cần trước khi kết thúc việc thực thi PHP, WordPress kích hoạt hành động cuối cùng được gọi là tắt máy.
WordPress ngừng làm việc ở đây. Nó đã chạy mã và tạo ra trang web yêu cầu của người dùng.
Bây giờ, máy chủ lưu trữ web của bạn trả lời yêu cầu của người dùng bằng cách gửi cho họ trang web được tạo ra bởi WordPress. Trang này có mã HTML, CSS và Javascript, cho phép trình duyệt của người dùng hiển thị trên màn hình của người dùng.
Tuyệt vời không phải là nó? Tất cả những điều này xảy ra trong vòng mili giây. Nếu bạn đang sử dụng một trong những dịch vụ lưu trữ WordPress tốt nhất, thì lý tưởng trang của bạn sẽ tải trong vài giây.