<div dir="ltr">I have no idea what you're talking about.<div><br></div><div>The correct way:</div><div><br></div><div>1. Create two Pages, one with what you want for the front-page content, another with no content and simply named "blog" or whatever you want the URL to me.</div>
<div><br></div><div>2. Go to Settings->Reading and assign the static page settings to show the Posts on your blog page and the Page content you want on the front page.</div><div><br></div><div>3. There is no three.</div>
<div><br></div><div>That's literally all you have to do. No messing with files of any sort. You don't need to copy index.php to anything else at all. That's the whole point of the Loop, it can display any content, whether it is a Page or a series of Posts.</div>
<div><br></div><div>- If the theme wants to display the Front Page differently from the "default" view in index.php, then it should use a front-page.php to do that.</div><div>- If the theme wants to display the "blog" differently from the "default" view in index.php, then it should use a home.php to do that.</div>
<div><br></div><div>There's no real case where you'd want to do both of these, but if you did, then a simple if (is_home()) check in the front-page.php could do the trick for you. </div><div><br></div><div>Basically, you're making things overcomplicated for the user. The theme should do it without asking the user to do anything special like messing with Page Templates. They should simply select what they want, through the core settings, and have that happen properly. Your way does not do that properly.</div>
<div><br></div><div class="gmail_extra"><div>-Otto</div>
<br><br><div class="gmail_quote">On Sat, Jul 5, 2014 at 4:01 PM, Philip M. Hofer (Frumph) <span dir="ltr"><<a href="mailto:philip@frumph.net" target="_blank">philip@frumph.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">
<div dir="ltr">
<div style="FONT-FAMILY:'Calibri';COLOR:#000000;FONT-SIZE:12pt">
<div>This is the tech support conversations to enable someone to have a blog on
a separate page, comparison.</div>
<div> </div>
<div>Scenario 1 (your considered “proper” way)</div>
<div> </div>
<div>1. First, FTP into your site. Yes, FTP; you can watch some
youtube video’s on learning how to ftp. Contact your hosting to get your
info properly.</div>
<div> </div>
<div>2. Navigate to the wp-content/themes/yourthemename/ and copy the index.php
and name is front-page.php .. yes, copy.. yes, you need to first move the
index.php file to your local drive then .. you don’t know how to do that? okay
let me explain ... ( 5 mins later )</div>
<div> </div>
<div>3. Okay now that you have that, you can go to settings –> reading and
enable the posts page to be a page you created, .. okay yeah so create a page
yes, a page .. you’ll need to create 2 pages, call one “Home” and the other
“Blog” (or) “posts page” </div>
<div> </div>
<div>4. Okay you did that? fine, set those in the settings –> reading, choose
which pages you want to display where.</div>
<div> </div>
<div>5. Cool beans, you’re done. What? That plugin you paid $50 for
is displaying on the posts page too? .. I’m sorry you’re going to have to
take that up with that plugin maker. Oh, that one too? damn
people don’t know how to program.</div>
<div> </div>
<div>6. I realize that it’s pretty complicated, but that’s the way the theme
review team wants to have it done, I apologize profusely.</div>
<div> </div>
<div>--------------------------------------------</div>
<div> </div>
<div>Scenario 2:</div>
<div> </div>
<div>1. Go to pages –> add new and create a blog page, in the
right column associate the “blog” template to it. </div>
<div> </div>
<div>2. Go to the theme settings and disable the blog loop from appearing on the
home page.</div>
<div> </div>
<div>3. You’re welcome!</div>
<div> </div>
<div> </div>
<div>---------------------------------</div>
<div> </div>
<div>Yeah, rather stick with my method.</div>
<div style="FONT-STYLE:normal;DISPLAY:inline;FONT-FAMILY:'Calibri';COLOR:#000000;FONT-SIZE:small;FONT-WEIGHT:normal;TEXT-DECORATION:none">
<div style="FONT:10pt tahoma">
<div><font size="3" face="Calibri"></font> </div>
<div style="BACKGROUND:#f5f5f5">
<div><b>From:</b> <a title="otto@ottodestruct.com" href="mailto:otto@ottodestruct.com" target="_blank">Otto</a> </div>
<div><b>Sent:</b> Saturday, July 05, 2014 1:20 PM</div><div><div class="h5">
<div><b>To:</b> <a title="theme-reviewers@lists.wordpress.org" href="mailto:theme-reviewers@lists.wordpress.org" target="_blank">Discussion list for WordPress
theme reviewers.</a> </div>
<div><b>Subject:</b> Re: [theme-reviewers] Is Blog.php is allowed in
theme?</div></div></div></div></div>
<div> </div></div><div><div class="h5">
<div style="FONT-STYLE:normal;DISPLAY:inline;FONT-FAMILY:'Calibri';COLOR:#000000;FONT-SIZE:small;FONT-WEIGHT:normal;TEXT-DECORATION:none">
<div dir="ltr">Okay, that's not a theme template, that is a Custom Page Template
with a custom loop, and no, that sort of thing should not be allowed in any
theme in the WordPress.org theme directory. In short, that is an incorrect way
to show the main blog posts on a page.
<div> </div>
<div>There's nothing wrong with making Custom Page Templates to show special
things, but the "main blog" is not a "special thing"... and it is correctly
handled by the core Template Hierarchy. The home.php file should be what you use
to display the blog posts, and you should not have a custom query in it like
that.</div>
<div> </div>
<div>The reason that is wrong is because it doesn't correctly support the core
functionality for setting a Page to appear on the front-page, and for the blog
posts to appear on a sub-page. With this implementation, somebody has to make a
Page and also set it to be using this Page Template, and then also set the
Settings->Reading settings incorrectly as well. </div>
<div> </div>
<div>See, if you have the Settings->Reading settings set correctly, with both
the Front and Posts pages set to some values, then it is not possible for the
Page to use your custom Page Template. So your "blog.php" here will not get used
unless you also instruct the user to set up the site incorrectly (aka,
incompletely). The correct way is to use the home.php to do a normal Blog loop,
and then that will be used no matter where the blog posts are displayed, as long
as the site is set up correctly.</div>
<div class="gmail_extra">
<div> </div>
<div>-Otto</div><br><br>
<div class="gmail_quote">On Sat, Jul 5, 2014 at 1:13 PM, Philip M. Hofer (Frumph)
<span dir="ltr"><<a href="mailto:philip@frumph.net" target="_blank">philip@frumph.net</a>></span> wrote:<br>
<blockquote style="BORDER-LEFT:#ccc 1px solid;MARGIN:0px 0px 0px 0.8ex;PADDING-LEFT:1ex" class="gmail_quote">
<div dir="ltr">
<div dir="ltr">
<div style="FONT-FAMILY:'Calibri';COLOR:#000000;FONT-SIZE:12pt">
<div>it’s a template that themes have that do the blog loop that can be
associated to a page, either custom for specific categories are all</div>
<div> </div>
<div style="FONT-STYLE:normal;DISPLAY:inline;FONT-FAMILY:'Calibri';COLOR:#000000;FONT-SIZE:small;FONT-WEIGHT:normal;TEXT-DECORATION:none">
<div style="FONT:10pt tahoma">
<div><font size="3" face="Calibri">“there’s no way to display it using any other
template file”</font></div>
<div><font size="3" face="Calibri"></font> </div>
<div><font size="3" face="Calibri">This is what I use, works fine:</font></div>
<div><font size="3" face="Calibri"></font> </div>
<div><?php</div>
<div>/*</div>
<div>Template Name: Blog</div>
<div>*/</div>
<div>get_header();</div>
<div> </div>
<div>$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;</div>
<div> </div>
<div>$blog_query = array(</div>
<div> 'paged' => $paged,</div>
<div> 'post_type' =>
'post',</div>
<div> 'in_the_loop' =>
true,</div>
<div> 'posts_per_page' =>
comicpress_themeinfo('home_post_count')</div>
<div> );</div>
<div> </div>
<div>$wp_query = new WP_Query(); $wp_query->query($blog_query);</div>
<div>if (have_posts()) {</div>
<div> while (have_posts()) : the_post();</div>
<div> $withcomment = 0;</div>
<div> get_template_part('content',
get_post_format());</div>
<div> endwhile;</div>
<div> comicpress_pagination();</div>
<div>}</div>
<div> </div>
<div>wp_reset_query();</div>
<div> </div>
<div>get_footer();</div>
<div> </div>
<div><font size="3" face="Calibri"></font> </div>
<div style="BACKGROUND:#f5f5f5">
<div><b>From:</b> <a title="otto@ottodestruct.com" href="mailto:otto@ottodestruct.com" target="_blank">Otto</a> </div>
<div><b>Sent:</b> Saturday, July 05, 2014 11:00 AM</div>
<div>
<div><b>To:</b> <a title="theme-reviewers@lists.wordpress.org" href="mailto:theme-reviewers@lists.wordpress.org" target="_blank">Discussion
list for WordPress theme reviewers.</a> </div>
<div><b>Subject:</b> Re: [theme-reviewers] Is Blog.php is allowed in
theme?</div></div></div></div>
<div> </div></div>
<div style="FONT-STYLE:normal;DISPLAY:inline;FONT-FAMILY:'Calibri';COLOR:#000000;FONT-SIZE:small;FONT-WEIGHT:normal;TEXT-DECORATION:none">
<div>
<div>
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">On Sat, Jul 5, 2014 at 12:48 PM, Philip M. Hofer
(Frumph) <span dir="ltr"><<a href="mailto:philip@frumph.net" target="_blank">philip@frumph.net</a>></span> wrote:<br>
<blockquote style="BORDER-LEFT:rgb(204,204,204) 1px solid;MARGIN:0px 0px 0px 0.8ex;PADDING-LEFT:1ex" class="gmail_quote">
<div dir="ltr">
<div dir="ltr">
<div style="FONT-FAMILY:calibri;COLOR:rgb(0,0,0);FONT-SIZE:12pt">
<div>The blog template is the point I was making in the first place, where
if you do *not* want the is_home or is_front_page events to execute, that is
the only way to bypass that; which makes having a blog.php useful.</div>
<div> </div></div></div></div></blockquote>
<div> </div>No, I mean, there is nothing in the code that I can find for
"blog.php" at all. It's not mentioned in the Template Hierarchy, there's
nothing in the template.php core file that mentions it. So, what exactly is
this "blog.php" to which you refer?
<div> </div>
<div>As far as I know, if you're displaying the results of the main posts
query, then you're doing it on front-page.php, home.php, or index.php. There's
no way to display it using any other template file.</div>
<div class="gmail_extra">
<div> </div>
<div>-Otto</div></div>
<div> </div></div></div></div></div></div>
<hr>
<div>_______________________________________________<br>theme-reviewers
mailing list<br><a href="mailto:theme-reviewers@lists.wordpress.org" target="_blank">theme-reviewers@lists.wordpress.org</a><br><a href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers" target="_blank">http://lists.wordpress.org/mailman/listinfo/theme-reviewers</a><br>
</div></div></div></div></div><br>_______________________________________________<br>theme-reviewers
mailing list<br><a href="mailto:theme-reviewers@lists.wordpress.org" target="_blank">theme-reviewers@lists.wordpress.org</a><br><a href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers" target="_blank">http://lists.wordpress.org/mailman/listinfo/theme-reviewers</a><br>
<br></blockquote></div>
<div> </div></div></div>
<p>
</p><hr>
_______________________________________________<br>theme-reviewers mailing
list<br><a href="mailto:theme-reviewers@lists.wordpress.org" target="_blank">theme-reviewers@lists.wordpress.org</a><br><a href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers" target="_blank">http://lists.wordpress.org/mailman/listinfo/theme-reviewers</a><br>
<p></p></div></div></div></div></div></div>
<br>_______________________________________________<br>
theme-reviewers mailing list<br>
<a href="mailto:theme-reviewers@lists.wordpress.org">theme-reviewers@lists.wordpress.org</a><br>
<a href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers" target="_blank">http://lists.wordpress.org/mailman/listinfo/theme-reviewers</a><br>
<br></blockquote></div><br></div></div>