2016-03-20 25 views
0

ブログ投稿ページ(single.php)に、各投稿の下に通常のブログページ(index.php)を含めることができます。アーカイブにいるとブログ記事をクリックすると、ポストは、単純にすべての記事の上に挿入されますかのように基本的には、それが表示されます:各投稿ページの投稿一覧表示

のindex.php

1. Blog post 1 
2. Blog post 2 
3. Blog post 3 

single.php

title 
content 

1. Blog post 1 
2. Blog post 2 
3. Blog post 3 

私は、私は私自身のget_posts()コールと単にforeachすべての投稿を行うことができます認識してんだけど、私はすでに私を持っていると見て私はと全く同じテンプレートを1つの投稿の下に置いて欲しいと思っています。アーカイブページで使われている "ループ"を複製する方法があれば、はるかに簡単です。私はまた、通常のページネーションで作業する必要があります(ただし、アーカイブに戻ると思います)。 P

任意のアイデア:私は明らかにそれを行うにはしたくない、あなただけが知っている -

index.phpファイルが実際に正確に何をしたいだろうINGの?

答えて

0

残念ながら、WPメインクエリはこれらの2つのケース(インデックスとシングル)では非常に異なっているため、残念ながら考えているようにはできません。しかし、get_template_part関数を使うことができます。これは、インクルードのように機能し、その中に複製したいクエリを入れます。その後、single.php、index.php、archive.phpなどで呼び出すことができます。

それはのようになります。

get_template_part('loop'); 

そしてloop.phpの内側に、あなたが好きでWP_Queryを呼び出します。

希望すると助かります!

+0

ありがとうございます、私はすでに 'get_template_part()'を使っていて、リスト/ループを含めるために 'single.php'テンプレートでそれを使用する予定です。しかし、実際のループコードを変更しなくてもいいように、 'index.php'と同じページネーションを得るためには、WPのループをオーバーライドして' index.php'とまったく同じように動作することを期待していました。それは不可能なことは絶対に肯定的ですか? – powerbuoy

+0

私は自分のループをやり終え、それに同じテンプレート部分を入れるだけでした。私はブログアーカイブの2ページへのリンクを生成するための公式のWP関数を見つけることができなかったので、ページネーションリンクを半分ハードコードする必要がありました。あなたはそのような機能を知ることはありませんか? – powerbuoy

関連する問題