Как динамически заполнить тег <title>на странице PHP? - PullRequest
0 голосов
/ 20 июля 2009

Мой код выглядит так:

index.php:

<html>....  
    <title>My page</title>

....

<?php
    switch ($_GET['id']){  
        case "tips":  
            include("tips.php");  
            $title = "Tips";
...

Как получить переменную заголовка для тега HTML title?

Все страницы проходят через index.php.

Ответы [ 4 ]

10 голосов
/ 20 июля 2009

Сделайте ваш PHP перед выводом HTML.

<?php

  switch ($_GET["id"]) {
    case "tips":
      $title = "Tips";
      $page  = "tips.php";
  }

?>
<html>
 <head>
  <title><?php print $title; ?></title>
 </head>
 <body>
  <?php include($page); ?>
 </body>
</html>
2 голосов
/ 20 июля 2009

Вы также можете сделать это с помощью буферизации вывода и небольшой заменой строки.

<?php ob_start('ob_process'); ?>
<html>....  
    <title>{{{TITLE}}}</title>

....

<?php

switch ($_GET['id']){  
  case "tips":  
    include("tips.php");  
    $title = "Tips";
    break;
}

function ob_process($buffer) {
  global $title;
  $buffer = str_replace('{{{TITLE}}}', $title, $buffer);
  return $buffer;
}
0 голосов
/ 20 июля 2009

Если вы не можете использовать то, что предлагает Ахмет Какичи, добавьте тег сценария, который устанавливает document.title

<html>....  
    <title>My page</title>

....

<?php
    switch ($_GET['id']){  
        case "tips":  
            include("tips.php");  
            $title = "Tips";
...
?>
<script>top.document.title="<?php=$title?>"</script>

Мой PHP ржавый, просто хотел предложить document.title

0 голосов
/ 20 июля 2009
< title > <?php echo $title; ?> < /title >
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...