WordPress的is_home()函数不起作用怎么办?

家乡的夜景,小小的月牙儿挂在湛蓝湛蓝的天空上,把淡淡的光洒在军舰上,军舰就像披上了一件银白色的棉袄,海面上波光粼粼,海浪轻轻地拍打着礁石,像一位母亲在抚摸着孩子的小脚丫。

WordPress 一般都是利用 is_home() 函数来判断是否为首页,如果不起作用,大致有如下两个常见原因:

第一种:首页不是默认的 index.php

这种情况一般都是在后台 >> 设置 >> 阅读中设置了首页显示为一个静态 page 页面。这种情况下 is_home() 就会失效,此时想要判断是否为主页可以使用 is_front_page() 函数来判断当前页是不是指定的首页。所以为了稳妥起见,我们判断 WordPress 首页可以组合起来使用,如:

  1. <?phpif(is_home()||is_front_page()){?>
  2. 仅在首页显示的代码
  3. <?php}?>

第二种:首页是默认的 index.php

这种情况一般都是因为 is_home() 之前有个 query_posts() 函数,而 query_posts() 函数会阻断 is_home() 函数对首页的判断。解决办法也很简单,只需要在 is_home() 之前加一个 wp_reset_query() 即可,如:

  1. <?phpwp_reset_query();if(is_home()){?>
  2. 仅在首页显示的代码
  3. <?php}?>

答案内容来自知更鸟

本文WordPress的is_home()函数不起作用怎么办?到此结束。要克服生活的焦虑和沮丧,得先学会做自己的主人。小编再次感谢大家对我们的支持!