web-dev-qa-db-ja.com

ページコンテンツを取得するための適切な方法

特定のページコンテンツを取得する必要があります(page(12)のように)

私はそれを使用しました:

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

フランス語と英語のテキストを返すqtranslateとの互換性を保つためにNice execを使用してください。

しかし、ループは結構です、良い言語版だけを返してください

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

質問....特定のページのコンテンツを取得するにはどうすればよいですか?.

8
menardmam

これは私がうまく動作することがわかっている解決策です...コーデックスはapply_filterについてもっと具体的であるべきです...それはすべての時間それをすべて使用しました

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

しかし、私は質問をするのに最適な場所を見つけました(ここ)。みんなありがとう !

5
menardmam

明確にするために:

あなたはここで二つのことを混ぜた。 qTranslateは同じ投稿に異なる言語を格納します。 get_content()$post->content、またはその他の直接クエリを呼び出すと、データベースからすべての異なる言語のコンテンツ全体を取得できます。

QTranslateが行うこと、それはthe_contentフックにアタッチされているフィルタフックを作成します。誰かがページテンプレートでthe_content()を呼び出すと、他のすべての言語が除外されます。

それであなたは正しいです。他の言語をフィルタリングするには、filter-hook the_contentをあなたの出力に適用する必要があります。

6
rofflox

あまり使われませんが、私自身は get_post_field() functionが好きです。それはあなたが単一の特定の分野を引っ張る必要があるときのためにコンパクトでありながら柔軟性があります。

5
Rarst

get_pageを使うことができます。

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

4
stffn