2016-09-23 4 views
0

ページごとの投稿リストに正しいページを返すリンクを個々の投稿テンプレートに追加したいと思います。たとえば、投稿がページ3に表示されている場合は、ユーザーをページ3に戻す必要があります。Wordpressページングされたリストに投稿がどのページであるかを調べる方法

これは実際にカスタムポストタイプなので、カスタムWP_Queryです。

私のコードは、現在、次のようになります。

<a href="<?php echo get_permalink(11); ?>">Back to posts</a> 

(11 IDポストリストのページのID)

私は、彼らがいない可能性があるため、バック簡単なJavaScriptを使用したくありませんリストページ、またはサイトからのものでもあります。

+0

以前の投稿リンクを表示しますか? – purvik7373

+0

特定のケースで以前の投稿リンクが適切ではないと思われます。ユーザーを投稿リストに戻すリンクが必要です – chrism

答えて

0

これは最善の方法ではないかもしれませんが、これはうまくいく方法です。 投稿のページ番号を取得する必要があります。これを行うには、元のページネーションに使用するカスタムクエリを使用してすべての投稿をループし、カウンタを持っていなければなりません(そして投稿が見つかるとループを解除する必要があります)。その数を合計ページ数で割ります。 ceil()を使用して、次に高い整数を取得します。それは投稿が掲載されているページ番号です。

各ポストビューでこの計算をしないので、そのポストIDのポストメタにその数値を保存します。投稿を保存するときに保存します。しかし、あなたは貯蓄や1つの新しい投稿をするすべての投稿をrecalcする必要があります。だから、これはあなたのサーバーにはうまくいかないでしょう。

キャッシュの種類がある場合は、毎回キャッシュがすべて同じ時刻にキャッシュされない限り、これは実際には機能しません。

とにかく、私はこれを自分ではしません。 JSと一緒に使ってみると、ポストに直接来る訪問者にとってはこれが機能しないということは当然のことです。

関連する問題