问题描述

我必须得到具体的页面内容 (如页面 (12))

我用过:

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

工作不错的 execpt 与 qtranslate 兼容返回法语和英语文本

但是循环很好,只返回好的语言版本

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

所以问题…. 如何获得一个特定的页面内容,让循环…

最佳解决方案

我回答了我自己的问题。调用 apply_filter,你去。

<?php
$id=47;
$post = get_post($id);
$content = apply_filters('the_content', $post->post_content);
echo $content;
?>

次佳解决方案

通过页面名称获取页面内容:

<?php
$page = get_page_by_title( 'page-name' );
$content = apply_filters('the_content', $page->post_content);
echo $content;
?>

第三种解决方案

通过 id 获取内容的简单,快速的方法:

echo get_post_field('post_content', $id);

如果你想获得格式化的内容:

echo apply_filters('the_content', get_post_field('post_content', $id));

与页面,帖子和定制帖子。

第四种方案

我用这个:

<?php echo get_post_field('post_content', $post->ID); ?>

这更简洁:

<?= get_post_field('post_content', $post->ID) ?>

第五种方案

wp_trim_words 功能也可以通过更改 $ num_words 变量来限制字符。任何人谁可能会发现有用的。

<?php
$id=58;
$post = get_post($id);
$content = apply_filters('the_content', $post->post_content);

$customExcerpt = wp_trim_words( $content, $num_words = 26, $more = '' );
echo $customExcerpt;
?>

第六种方案

只需复制并粘贴此代码即可获取您的页面内容。

<?php
                $pageid = get_the_id();
                $content_post = get_post($pageid);
                $content = $content_post->post_content;
                $content = apply_filters('the_content', $content);
                $content = str_replace(']]>', ']]&gt;', $content);
                echo $content;
                ?>

参考文献

注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。