如果加载了404.php,如何与IS_PAGE核对?

时间:2013-02-05 作者:Yurij73

我想检查当前页面是否至少符合两个条件中的一个。我不想在about页面和404页面中显示js代码。在剩下的页面中,我展示了js代码。所以,我使用((!is_page(element1) AND !is_page(element2)) 然后显示js代码。Element1是一个特定页面的slug,element2是404。php页面。我不知道在if语句中要显示的404页的slug或名称。

2 个回复
最合适的回答,由SO网友:Simon 整理而成

我认为这样做可以:

if ( is_page( \'element1.php\' ) || is_404() ) {
// do that  if page is using template page element1.php or is 404
}

SO网友:s_ha_dum

404页可能没有slug. 它是自动创建的,就像标签和类别页面归档页面一样

现在is_page 没有告诉您任何关于正在使用的模板的信息,当您说“and element2 is 404.php page”时,您似乎正在考虑检查该模板。is_page_template 将所以

if (is_page(\'element1\') || is_page_template(\'404.php\')) {
  // stuff
}
如果加载了page slug==element1或正在加载使用404.php. 但是404.php 不是必需的主题文件,因此查找模板可能不是您想要的。您可能想使用is_404 正如西蒙的回答(如果你同意,你应该“接受”is_404).

结束

相关推荐