is_front_page 和 is_home 区别及使用

在 WordPress 主题开发中,经常需要判断是否是主页。

本来是一个简单的问题,但是由于 WordPress 主题模板的调用关系和 WordPress 主页设置的灵活性以及 is_front_page 和 is_home 两个函数,这个问题变得有时让人迷惑……

也想出现在这里?联系我们
创客主机

这需要理解 WordPress 主题模板的设计原理才行。

在 WordPress 主题模板里,Site Front Page 即首页 和 Blog Posts Index Page 即博客文章索引页,是两个不同的概念。只不过在很多主题里这两个页面使用了一个共同的模板文件 index.php。

is_front_page 用来判读是不是 Site Front Page。

is_home 用来判读是不是 Blog Posts Index Page。

如果,设置->阅读->您的主页显示,设置为:您的最新文章。那么 Site Front Page 和 Blog Posts Index Page 共用同一个 URI,is_front_page 和 is_home 将同时为 true。

如果,设置->阅读->您的主页显示,设置为:一个静态页面。在访问到【主页】的 URI 的时候,is_front_page 为 true;在访问到【文章页】的 URI 的时候,is_home 为 true;

  1. if (is_home()) {
  2.     echo '这是文章页';
  3. }
  4.  
  5. if (is_front_page()) {
  6.     echo '这是主页';
  7. }

热销模板

Ashade - 作品展示摄影相册WordPress汉化主题
LensNews

本站承接 WordPress / PbootCMS / DedeCMS 等
系统建站、仿站、开发、定制等业务!