-1

我刚刚使用教程作为参考创建了一个新网站。我的问题主要是标题没有改变。但也不可能改变任何东西。定义的标头中的所有内容都是静态的。

我是 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 文件的最佳实践之类的教程?

4

3 回答 3

1

绝对最简单的“动态”标头:

header.php:

<title><?php echo $title ?></title>

索引.php:

$title = 'Hello, world!';
include('header.php');
于 2013-08-02T15:45:54.887 回答
0

试试下面的代码。

<?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; ?>" />
于 2015-10-22T07:29:53.220 回答
-1

我不确定你为什么会路由到这样的页面,但是我猜你的标题/元数据在 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>
于 2013-08-02T15:49:08.650 回答