Hằng số WP_USE_THEMES dùng để làm gì?


35

Về WP_USE_THEMEShằng số, Codex tuyên bố :

Nếu bạn đang sử dụng Vòng lặp bên trong thiết kế của riêng bạn (và thiết kế của riêng bạn không phải là mẫu), hãy đặt WP_USE_THEMES thành false.

Nhưng hiệu ứng thực tế trên WordPress WP_USE_THEMESlà gì khi được đặt thành đúng hay sai? Tôi muốn biết nó được WP sử dụng như thế nào.

Câu trả lời:


35

Điều này chỉ được sử dụng trong template-loader.php, để xác định xem nó có nên tải một tệp chủ đề hay không. "Trình tự khởi động" bình thường của WordPress (bắt đầu wp-blog-header.php) tải các plugin, phân tích cú pháp URL, thực hiện truy vấn bài đăng dựa trên URL và gọi chủ đề. Truy vấn bài chính này thường được sử dụng trong "Vòng lặp". Vì vậy, nếu bạn muốn tất cả các lợi thế của phân tích cú pháp URL nhưng không hiển thị nó bằng chủ đề trang web, bạn có thể đặt WP_USE_THEMESthành falsevà nó sẽ không thực hiện bước cuối cùng đó.


Cảm ơn Jan, tôi sẽ nghiên cứu những tập tin đó để có được nó đầy đủ.
mikkelbreum

1
Chỉ cần làm rõ, functions.phptập tin của chủ đề đang hoạt động sẽ vẫn được tải. Đây chỉ là (các) mẫu chủ đề không được tải.
JD

3
Điều gì sẽ là một ví dụ thực tế của một tình huống mà điều này được sử dụng? Tại sao ai đó muốn ngăn chặn chủ đề tải?
Alexander Rechsteiner

2
@AlexanderRechsteiner: Có thể bạn đã triển khai một hành động phụ trợ, điều đó sẽ không trả lại phản hồi HTML đầy đủ. Tương tự như cách cron được triển khai hoặc API trả về dữ liệu ở định dạng khác?
Jan Fabry

Chỉ cần thêm vào câu trả lời trong các bình luận: có lẽ, điều này sẽ phát huy tác dụng nếu WordPress được sử dụng không đầu (ví dụ: thông qua wp-cli).
Loren Rosen

0

Dựa trên dòng này trong tài liệu Vòng lặp:

<?php define( 'WP_USE_THEMES', false ); get_header(); ?>

Tôi sẽ giả sử rằng mục đích của WP_USE_THEMESví dụ này là để chạy các trình xử lý hành động đã đăng ký với get_headerhook, nhưng không thực sự thực thi tệp mẫu tiêu đề.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.