获取页面内容的正确方式

时间:2011-03-15 作者:menardmam

我必须获得特定的页面内容(如第(12)页)

我用的是:

  <?php $id=47; $post = get_page($id); echo $post->post_content;  ?>
使用nice execpt与qtranslate兼容,返回法语和英语文本

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

<?php if(have_posts()) : while(have_posts()) : the_post(); ?>
<div id="post">
<?php the_content(); ?>
</div> <!-- .post -->
所以问题是。。。。如何获得一个特定的网页内容insite的循环。。。

4 个回复
最合适的回答,由SO网友:menardmam 整理而成

这是我找到的解决方案,效果很好。。。codex应该更具体地介绍apply\\u过滤器。。。每次都用它

$id=47;
$post = get_page($id);
$content = apply_filters(\'the_content\', $post->post_content);
echo $content;
但我找到了一个很好的地方来提问(这里)!谢谢大家!

SO网友:Roman

我想澄清一下:

你把两样东西混在一起了。qTranslate在同一帖子中存储不同的语言。如果你打电话get_content(), $post->content 或其他直接查询,您将从数据库中获得所有不同语言的全部内容。

qTranslates所做的是创建一个连接到the_content 钩如果有人打电话the_content() 在页面模板中,将过滤掉所有其他语言。

所以你是对的。要过滤其他语言,必须应用过滤器挂钩the_content 到您的输出。

SO网友:Rarst

虽然不常用,但我喜欢我自己get_post_field() 作用它结构紧凑,但在需要拉取单个特定字段时非常灵活。

SO网友:stffn

您可以使用get_page, 像这样:

http://codex.wordpress.org/Function_Reference/get_page

结束

相关推荐

query if on page/2/?

嘿,伙计们,有没有办法检查我现在是否不在我博客的首页上?我知道有一些条件标记,如is\\u home()。然而,如果我在我的博客上,那就行不通了。com/page/2/我的frontpage上有一个分页,用户可以跳转到下一页。如果我在第二页,我想显示一个“主页”链接。你知道我怎样才能做到吗?非常感谢。