I’m trying to create a custom page 2 template that’s different from the main index.php. For example, the main index page would display the latest news + a lot of features like a magazine. When readers click to read on to page 2, 3, 4 etc of the news posts, they are taken to a more regular news page. Kinda like something on theverge.com (at the bottom, click “next page” and see what I mean).
Anyone have any ideas on how to do this? I know it’s possible to create archive pages for categories and tags, but I’m not sure how to do it for the index.php.
Thanks!
I would use the
is_paged()
conditional insideindex.php
to load two separate templates containing your layouts. Something like this:Assuming you have two templates,
content-first-page.php
andcontent-paged.php
.Edit: If you just want a different template for part of your index page, try this:
Put that wherever you want the extra template to load.
@Joseph’s answer is probably what you’re after. But if the first and subsequent pages are going to be sufficiently different so as to require a complete different template you can hook into the
template_include
filter.This alters the default template used for pages 2 and higher of the ‘front page’ (see
is_front_page
andis_paged()
). Thelocate_template
searches the (child and parent) theme for the given templates – in the order given to it. In this example, it will usearchive.php
for pages 2 and above- if that template doesn’t exist, it will useindex.php
instead.