我在PHP网站上使用if else条件标记。我的代码是:
<?php if(is_page('print-systems-overview.php')) { ?>
<style type="text/css">
.activeNew{background:#4E4E4E;}
</style>
<?php } elseif (is_page('software.php')) { ?>
<style type="text/css">
.activeNew{background:grey;}
</style>
<?php } ?>
但是我得到了致命的错误: 致命错误:在第36行的D:\ xampp \ htdocs \ project1234 \ header.php中调用未定义的函数is_page()
经过研究后我才知道is_page正在使用wordpress,它只是wordpress功能而不是在核心PHP上工作。有没有办法在核心PHP中做这种类型的功能。
请帮我解决这个问题。我是PHP的新手,所以对它的了解不多。感谢
Rickky
答案 0 :(得分:1)
页面是wordpress
函数,如果你想在核心php中创建这样的东西,这是一种方法
创建一个文件来保存此功能,例如functions.php
,以便您可以重复使用它并将其包含在页面中
<强>的functions.php 强>
<?php
function is_page($page_name) {
$url = $_SERVER['SCRIPT_NAME'];
//Check for current page equal to $page_name
return basename($url) == $page_name;
}
然后检查页面调用
<?php include('functions.php') ?>
<?php if(is_page('print-systems-overview.php')) { ?>
<style type="text/css">
.activeNew{background:#4E4E4E;}
</style>
<?php } elseif (is_page('software.php')) { ?>
<style type="text/css">
.activeNew{background:grey;}
</style>
<?php } ?>
答案 1 :(得分:1)
您可以使用basename($_SERVER['PHP_SELF']);
返回当前文件名
function is_page(){
$file_name = basename($_SERVER['PHP_SELF']);
if($file_name == 'print-systems-overview.php') { ?>
<style type="text/css">
.activeNew{background:#4E4E4E;}
</style>
<?php } elseif ($file_name == 'software.php') { ?>
<style type="text/css">
.activeNew{background:grey;}
</style>
<?php }
} ?>
只需调用is_page()函数