如何通过此设置创建动态(我认为这个词)标题?例如,当我查看个人资料时,我希望它在<title>
内查看USERNAME'的个人资料。如果不在每个单独的页面上放置html顶部,我怎么能做到这一点?
非常感谢。
请不要开始谈论mvc,我不需要那个
<html>
<head>
<title>KALASHNIKOV - $??</title>
</head>
<body>
<?php
switch($area) {
// The default page
default:
include_once('pages/main.php');
break;
// This is for registering an account
case 'register':
include_once('pages/register.php');
break;
// This is to log in!! (obviously)
case 'login':
include_once('pages/login.php');
break;
// This is for logging out
case 'logout':
logout();
break;
}
?>
</body>
</html>
答案 0 :(得分:2)
好吧,如果你不想把HTML放在每个页面的顶部,我假设你把它放在一个单独的文件中,比如header.php
,它应该是这样的:
<html>
<head>
<title><?= $page_title ?> - My Site</title>
</head>
然后在您的每个网页上,您只需在设置之前设置$page_title
,例如
$page_title = 'My Page';
include 'header.php'
无论如何,这是解决问题的一种方式。
答案 1 :(得分:1)
每个子页面应该执行以下操作:
<?php require('header.php') ?>
其中header.php有类似的内容:
<title>KALASHNIKOV - <?php echo $GLOBALS['pageTitle'] ?></title>
或使用支持模板和代码段的zend framework
答案 2 :(得分:0)
我会在你的php文件的顶部创建一个这样的数组(可能太复杂但是因为你的网站可能会变得更大,所以更容易解决它):
<?php
error_reporting(E_ALL); // that's always good
$sites = array(
'default' => array(
'pages/main.php',
'Main title'
),
'register' => array(
'pages/register.php',
'Register'
),
'login' => arary(
'pages/login.php',
'Login'
}
);
$title = array_key_exists($area,$sites) ? $sites[$area][1] : $sites['default'][1];
?>
<html>
<head>
<title>KALASHNIKOV - <?=$title?></title>
</head>
<body>
<?php
if (array_key_exists($area,$sites))
require $sites[$area][0];
else
require $sites['default'][1];
?>
答案 3 :(得分:0)
将它放在页面的任何位置:
<script language="JavaScript">document.title ="KALASHNIKOV - blablabla";</script>
答案 4 :(得分:0)
看起来您可以从额外的图层中受益。您可以使用switch
来设置内容和标题(以及您可能需要的任何其他内容),而不是让您的内容页面使用switch
来包含内容。< / p>
$title = "KALASHNIKOV - "
$include_page = "content.php"
$content_page = "pages/404.php";
switch($area) {
// The default page
default:
$content_page = 'pages/main.php';
break;
// This is for registering an account
case 'register':
$content_page = 'pages/register.php';
break;
// This is to log in!! (obviously)
case 'login':
$content_page = 'pages/login.php';
break;
// This is for logging out
case 'logout':
$include_page = 'logout.php';
break;
}
require_once $include_page;
content.php:
<html>
<head>
<title><?php echo $title; ?></title>
</head>
<body>
<?php require_once $content_page; ?>
</body>
</html>
然后logout.php将调用logout()
并在那里做任何事情,我不知道你是如何处理它的。
这种方法也更好地支持逻辑与表示的分离,这总是一个好主意。