私は持っています
index.php
archive.php
...
私がdomain.comに行くと、それはindex.phpをロードしますが、これは予想されたものです。
しかし、私がwww.domain.com/page/2/
を実行すると、正しい投稿(2ページ目の投稿のように)が読み込まれますが、inindex.php templateを使用します。 archive.phpテンプレートをロードします。これはどのように達成可能ですか?
archive.php
は、検索以外、分類以外の...ベースのコンテンツのサブセットの後続ページには使用されません。
私はあなたがpaged.php
を探しているかもしれないと思います(しかしそれは最初のページにも使われるでしょう)。
あるいは、ページ番号が1より大きい別のテンプレートを呼び出すためにindex.php
にロジックを追加します。
見直しの訂正http://codex.wordpress.org/Template_Hierarchy#Visual_Overviewpages.php
答えではありません。ページ化された(つまり、単一ではない)投稿はhome.php
を使用し、そうでなければindex.php
のみを使用します。
そのため、home.php
または投稿用のカスタムテンプレートを使用するには、(おそらくindex.php
に)独自のロジックを追加する必要があります。
(この answer は、使用するテンプレートを決定するためのWPロジックを示しています。)
これはWPの本来の機能ではないため、これを行う方法は次のとおりです。
基本的に、$ pagedが設定されているか確認してください。これは、条件式の中でis_paged()を呼び出すことによって行うことができます。
<?php if ( ! is_paged() ) :
// code for home page
else:
// code for archive page
endif;
?>
テンプレートを利用することで、このindex.phpをまだきれいに見せることができます。
ただし、これを行っていることを確認する必要があります。
<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; ?>
ホームクエリまたはアーカイブクエリの前に。