Cách thích hợp để có được nội dung trang


8

Tôi phải lấy nội dung trang cụ thể (như trang (12))

Tôi đã sử dụng nó:

  <?php $id=47; $post = get_page($id); echo $post->post_content;  ?>

Làm việc tốt thực hiện để tương thích với qtranslate nó trả lại văn bản tiếng Pháp và tiếng Anh

Nhưng vòng lặp vẫn ổn, chỉ trả lại phiên bản ngôn ngữ tốt

<?php if(have_posts()) : while(have_posts()) : the_post(); ?>
<div id="post">
<?php the_content(); ?>
</div> <!-- .post -->

Vì vậy, câu hỏi .... CÁCH để có được một nội dung trang cụ thể bao gồm vòng lặp ...


Điều này rất hữu ích! Cảm ơn! Tôi đã có một thời gian khó khăn để tìm kiếm những gì tôi nghĩ là một yêu cầu đơn giản.

Câu trả lời:


6

Chỉ cần làm rõ:

Bạn trộn hai thứ ở đây. qTransTable lưu trữ các ngôn ngữ khác nhau trong cùng một bài. Nếu bạn gọi get_content(), $post->contenthoặc một truy vấn trực tiếp khác, bạn sẽ nhận được toàn bộ nội dung với tất cả các ngôn ngữ khác nhau từ cơ sở dữ liệu.

Những gì qTranslates làm, nó tạo ra một hook-hook được gắn vào the_contenthook. Nếu ai đó gọi the_content()trong một mẫu trang, tất cả các ngôn ngữ khác sẽ được lọc ra.

Vì vậy, bạn đã đúng. Để lọc các ngôn ngữ khác, bạn phải áp dụng móc lọc the_contentcho đầu ra của mình.


6

Đây là giải pháp tôi có các danh từ hoạt động tốt ... codex nên cụ thể hơn về application_filter ... được sử dụng mọi lúc

$id=47;
$post = get_page($id);
$content = apply_filters('the_content', $post->post_content);
echo $content;

Nhưng tôi đã tìm thấy một nơi tuyệt vời để đặt câu hỏi (TẠI ĐÂY)! cảm ơn các bạn !


5

Nó không được sử dụng thường xuyên, nhưng bản thân tôi thích get_post_field()chức năng. Nó nhỏ gọn, nhưng linh hoạt khi bạn cần kéo một trường cụ thể.


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.