Cả hai câu trả lời cho đến nay đều đúng nhưng một câu trả lời kỹ lưỡng hơn dường như được bảo đảm.
Nếu bạn sử dụng điều này:
$content = wpautop( $post->post_content );
bạn đang áp dụng một chức năng thêm thẻ đoạn văn để đăng nội dung. wpautop()
là một trong nhiều chức năng (bao gồm cả chức năng plugin đôi khi) nối vào the_content
, vì vậy nếu bạn làm điều này:
$content = apply_filters('the_content', $post->post_content);
bạn đang nhận được nội dung bài đăng chạy qua bất kỳ bộ lọc the_content
nào bao gồm wpautop()
theo mặc định.
Cuối cùng, nếu bạn đang ở trong vòng lặp, bạn có thể thực hiện việc này:
$content = apply_filters( 'the_content', get_the_content() );
về cơ bản là một trình bao bọc cho đoạn mã thứ hai, nhưng tất nhiên nó trông đẹp hơn một chút. Cập nhật ngày 1 tháng 9 năm 2018: Sửa đổi dựa trên nhận xét . Đạo cụ @timmb.
Nói chung, tôi muốn nói rằng "cách đúng" ưa thích để thực hiện việc này là từ cuối đến trước vì sử dụng chức năng WP lõi sẽ cho phép khả năng tương thích ngược nhiều hơn (ít nhất là về mặt lý thuyết). Quyết định duy nhất khác được đưa ra sau đó là liệu bạn có muốn cho phép WordPress và plugin cũng sửa đổi nội dung bài đăng hay không. Nếu đó là trường hợp, chắc chắn sử dụng các tùy chọn thứ 2 hoặc thứ 3.
$content = apply_filters('the_content', get_the_content);
?