php排除了一段html代码


php excluding piece of html code?

我在这里有一个名为phpVMS的自定义CMS,我想排除一段代码,一个单独页面的横幅。phpVMS是使用模板来控制的,例如,为所有页面编码总体布局的主模板名为layout.tpl。所以,正如我所说,它在所有页面上显示模板中的内容。然而,我创建了一个特殊的控制面板,因此需要排除横幅,因为它稍微破坏了它的主题。有没有PHP代码可以排除单个网站上的一段代码?我需要删除单个分区…

<div id="slideshow"></div>

在单个页面上。

基本上,我可以创建一个新的模板,但在这个CMS中,这是一种非常冗长和低效的方式,最终的结果并不是很好-因为我不能重新包括主框div,它是定义主题中心白色部分内容的框-它已经在layout.tpl.中了

我希望你能以某种方式帮助我,希望我在那里提供了足够的信息。

谢谢。

我不认为您可以在PHP中执行要求,但您可以在客户端执行此操作,方法是隐藏div(CSS display:none)或使用JavaScript删除它。你也许可以做一些类似的事情:

<?php
    include("layout.tpi");
    if (condition)
    {
        // Javascript:
        echo "<script>document.getElementById('slideshow').style.display = 'none';</script>";
        // OR jQuery:
        echo "<script>$('#slideshow').hide();</script>";
    }
?>

如果您使用一个变量来确定您不想包含div,您可以这样做:

<?php if ($include) { ?>
    <div id="slideshow"></div>
<?php } ?>

<?php
    if (!$include)
        echo "<!--";
?>
<div id="slideshow"></div>
<?php 
    if (!$include)
        echo "-->";
?>

编辑:显然,没有充分的理由使用第二种方法。第二个方法只注释掉HTML,所以它仍然会显示在源代码中。

我不确定这是否是您想要的,但看起来很简单

<?
$template = true;
if($template) {
?>
<div id="slideshow"></div>
<?
}
?>

在模板上,您可以有一些代码:

if($_SERVER['PHP_SELF'] == /*control panel file*/) {
     //exclude
}else{
     //include
}
相关文章: