我刚刚用教程作为参考创建了一个新网站。我的问题主要是标题没有改变。但也不可能改变任何事情。定义的标头中的所有内容都是静态的。
我是PHP的新手,所以非常感谢您的帮助。
这是我当前的代码:
<?php
error_reporting(E_ALL | E_STRICT);
ini_set('display_errors', 'On');
if (isset($_GET['content'])) {
$content = strtolower(trim($_GET['content']));
} else {
$content = '';
}
include_once 'inc/header.php';
switch ($content) {
case 'main':
include 'inc/main.php';
break;
case 'blog':
include 'inc/blog.php';
break;
case 'portfolio':
include 'inc/portfolio.php';
break;
case 'lebenslauf':
include 'inc/lebenslauf.php';
break;
case 'kontakt':
include 'inc/kontakt.php';
break;
default:
include 'inc/main.php';
}
$content = "main";
include_once 'inc/footer.php';
?>
你知道如何编辑这些代码以动态更改标题或元标签吗?或者你知道PHP文件的最佳实践教程吗?
绝对最简单的裸机"动态"标头:
header.php:
<title><?php echo $title ?></title>
index.php:
$title = 'Hello, world!';
include('header.php');
试试下面的代码。
<?php
$title = "";
$description = "";
$keywords = "";
$url = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
if(strpos($url, 'index') !== false){
$title = "Home | Your Site Name";
$description = "Your Site description ";
$keywords = "Your Site Keywords";
}elseif(strpos($url, 'about') !== false){
$title = "About Us";
$description = "About description ";
$keywords = "key words";
}
?>
<title><?php echo $title; ?></title>
<meta name="description" content="<?php echo $description; ?>" />
<meta name="keywords" content="<?php echo $keywords; ?>" />
我不确定你路由到这样的页面的原因,但我猜你的标题/元数据在header.php文件中。
要更改它们,您可以为每个创建一个数组,如下所示:
$titles = array(
'blog.php' => 'title for blog',
'main.php' => 'title for main',
//etc
);
在您的交换机中,分配一个变量$include或其他正确的页面,例如:
case:'main':
$include = 'main.php';
include(main.php);
break;
然后使用$include在header.php中获取标题,例如:
<title><?php echo $titles[$include];?></title>