php排除一段HTML代码?

时间:2012-03-19 18:03:09

标签: php html css

我这里有一个名为phpVMS的自定义CMS,我想要排除一段代码,一个单页的横幅。使用模板操纵phpVMS,例如,编码所有页面的一般布局的主模板名为layout.tpl。所以,就像我说的,这会在所有页面上显示模板中的内容。然而,我创建了一个特殊的控制面板,因此需要排除横幅,因为它会略微破坏它的主题。是否有任何PHP代码在一个站点上排除了一段代码?我需要删除一个div ...

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

...在一个页面上。

基本上,我可以创建一个新的模板,但这在这个CMS中是一个非常漫长而且无效的方式,最终的结果并不那么好 - 因为我无法重新包含mainbox div,这是定义主题的中心白色位上的内容 - 它已经在layout.tpl。

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

感谢。

4 个答案:

答案 0 :(得分:1)

如果您使用变量来确定您不想包含div,则可以执行以下操作:

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

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

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

答案 1 :(得分:1)

我认为你不能在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>";
    }
?>

答案 2 :(得分:0)

我不确定这是不是你想要的,但似乎很简单

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

答案 3 :(得分:0)

在模板上,您可以使用以下代码:

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