我正在尝试将我的登录页定位为is_front_page
或is_home
在我的page.php
但它不起作用。我已设置settings > reading
到静态页面。
但是,如果我创建page-home.php
一切正常(当然没有标签)。但是,如果我使用is_front_page
或is_home
在索引文件上,它们将起作用(在我的博客页面上)。
我只是误解了它们的功能,如果是这样,我如何动态地定位登录页?
<?php get_header(); ?>
<?php if ( is_front_page() || is_home() ) : ?>
<h1>Why not???</h1>
<?php endif; ?>
<div>
<article>
<?php get_template_part( \'loop\', \'page\' ); ?>
</article>
<aside>
<?php get_sidebar(); ?>
</aside>
</div>
<?php comments_template(); ?>
<?php get_footer(); ?>
最合适的回答,由SO网友:Eugene Manuilov 整理而成
好的,如果您看看is_front_page
, 您将看到以下内容:
/**
* Is the query for the front page of the site?
*
* This is for what is displayed at your site\'s main URL.
*
* Depends on the site\'s "Front page displays" Reading Settings \'show_on_front\' and \'page_on_front\'.
*
* If you set a static page for the front page of your site, this function will return
* true when viewing that page.
*
* Otherwise the same as @see WP_Query::is_home()
*
* @since 3.1.0
* @uses is_home()
* @uses get_option()
*
* @return bool True, if front of site.
*/
function is_front_page() {
// most likely case
if ( \'posts\' == get_option( \'show_on_front\') && $this->is_home() )
return true;
elseif ( \'page\' == get_option( \'show_on_front\') && get_option( \'page_on_front\' ) && $this->is_page( get_option( \'page_on_front\' ) ) )
return true;
else
return false;
}
我想你的问题的答案就在这句话里
If you set a static page for the front page of your site, this function will return true when viewing that page.
这意味着要创建您的页面。php按照您的意愿工作,您需要转到“设置”->“阅读”页面并设置“首页显示”选项。