不同的url显示不同的div - header.php

时间:2015-11-17 18:04:33

标签: php header

我可能会问一个愚蠢或愚蠢的问题。但是,我很好奇,因为我是PHP的初学者。我想问一下这种方式是否可能发生。

以下是问题所在: 我想要一些像wordpress一样的东西。但是,我不打算在这个网站上使用wordpress。就像wordpress在其路径中有header.php一样。然后,我们可以使用wordpress php代码来显示或隐藏我们想要显示或隐藏的内容,如下所示。

以下是我从Wordpress复制的php代码作为示例:

<?php if (is_front_page()) { ?><?php } elseif (is_home() || is_single() || is_page() || is_archive() || is_404() || is_search()) { ?>
<?php
    /* We add some JavaScript to pages with the comment form
     * to support sites with threaded comments (when in use).
     */
    if ( is_singular() && get_option( 'thread_comments' ) )
        wp_enqueue_script( 'comment-reply' );

    /* Always have wp_head() just before the closing </head>
     * tag of NCC, or you will break many plugins, which
     * generally use this hook to add elements to <head> such
     * as styles, scripts, and meta tags.
     */
    wp_head();
?>
<?php } ?>

因为,我将创建一个简单的PHP编码实现的简单网站。我要创建一些页面 - &gt; page1.phppage2.phppage3.phpheader.phpheader.php用于管理网页的头部(就像wordpress一样)。是否可以使用简单的PHP代码完成它?

实施例: 当我访问page2.php时,header.php将仅显示我想要显示的内容。

是否可以将is_single()更改为url?有什么建议吗?或者任何其他更好的解决方案可以更容易地做到这一点?

更新 header.php

<?php
function includeFile($file){
    if($file == "index.php"){

        Page Title for index.php

    }elseif($file == "page.php"){

        Page Title for page.php

    }elseif($file == "page1.php"){

        Page Title for page1.php

    }
}
?>

在我的index.php

<?php session_start(); /* Starts the session */
if(!isset($_SESSION['UserData']['Username'])){
    header("location:login.php");
    exit;
}
?>
<?php include('functions.php'); ?>
<!doctype html>
<html>
<head>
<title>
<?php 
    require_once('header.php'); 
    includeFile(basename(__FILE__));
?>
</title>
<link href="style.css" rel="stylesheet" />
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0">
<link href='http://fonts.googleapis.com/css?family=Montserrat' rel='stylesheet' />
<link rel="shortcut icon" href="http://www.example.com/img/favicon.ico" type="image/x-icon">
</head>
<body>
Content...
</body>
</html>

1 个答案:

答案 0 :(得分:1)

<强>更新

是的,您当然可以使用PHP magic constant __FILE__basename()来做到这一点。

<强>的header.php

function includeFile($file){
    if($file == "page1.php"){

        // include stuff for page1.php

    }elseif($file == "page2.php"){

        // include stuff for page2.php

    }elseif($file == "page3.php"){

        // include stuff for page3.php

    }
}

在每个页面中都包含头文件并调用函数includeFile(),如下所示:

<强> page1.php中

<?php 
    require_once('header.php'); 
    includeFile(basename(__FILE__));
?>

<强>使page2.php

<?php 
    require_once('header.php'); 
    includeFile(basename(__FILE__));
?>

<强> page3.php

<?php 
    require_once('header.php'); 
    includeFile(basename(__FILE__));
?>