[wp-hackers] the home.php problem: does it asks for a posts.php ?

Ricardo Moraleida moraleida at gmail.com
Mon Aug 27 21:26:53 UTC 2012


There's just no need to use page templates on the second case. They are
only needed if you combine a home.php file with no Reading Settings.

If you set Reading options for both the home page and posts page, everytime
you navigate to your posts' page the theme will fire index.php instead of
home.php or front-page.php and your list is good to go.

Am I missing something?

Ricardo Moraleida



2012/8/27 Leo germani <leogermani at gmail.com>

> Hi all,
>
> Imagine you create a home.php or front-page.php template in your theme.
>
> Ok, now the visitor sees this template when visiting your sites front page.
> You can put anything you want there, in a template totally different from
> the blog template. Cool.
>
> Now you want to have a link to the lists of posts of your site, right? Of
> course it should be easy. But here you get in a weird situation with no
> good solution so far.
>
> Solution 1 - Page template
>
> You create a page template, with a simple code that executes query_posts()
> and load your index.php.
>
> This is not a good solution for at least 2 reasons. First, body_class()
> does not work well in this situation. Second, it requires the user to
> create the page and assign the template, this means he/she can break the
> site if this page is edited or deleted
>
> Solution 2 - Use the Reading settings as usual, and create 2 page
> templates. In this case, you will probably have to edit the name of your
> home.php file because sometimes it conflicts with these options. In other
> words, this scenario makes home.php useless.
>
> So, isnt it a good idea to have a posts.php template? Lets think about this
> solution:
>
> We have now post type archives, so, in theory, we could have a
> archive-post.php and if we access mysite.com?post_type=post we would see
> our blog there. It works, but it does not look very good when we're using
> beatiful permalinks.
>
> If we follow the same structure we have for others CPTs, visiting
> mysite.com/post would take me to the same place. But it does not, because
> this rewrite rule doesnt exist.
>
> Adding this rule could be a solution, but not a good one. /post/ is not a
> good URI for a blog.
>
> So what I think that could be done:
>
> . add a default rewirte rule that redirects /blog/ (or /posts/) to
> ?post_type=post (and then we use archive-post.php in our theme).
>
> . add an option in the permalinks page that lets the user change the posts
> base URI, as they do with categories and tags.
>
> What do you think about that?
>
> Leo,,
>
> --
> leogermani.com.br
> _______________________________________________
> wp-hackers mailing list
> wp-hackers at lists.automattic.com
> http://lists.automattic.com/mailman/listinfo/wp-hackers
>


More information about the wp-hackers mailing list