ChocCookieRaider
ChocCookieRaider

Reputation: 145

Different page titles with one header file?

How do you do multiple page titles with on header file? Theres one thing though. For the index page, i've got

error_reporting(0);
if ($_GET["error"]=="404") { 
    include("forum/styles/art_air/web_template/overall_header.php");
    include("include/404"); 
    include("include/index");
    include("forum/styles/art_air/web_template/overall_footer.php");
} else { 
    include("forum/styles/art_air/web_template/overall_header.php");
    include("include/index");
    include("forum/styles/art_air/web_template/overall_footer.php");
}

So i would have the header before anything else. So how would i manage to make so that

index?error=404 and index have different titles? Thanks in advance.

Upvotes: 0

Views: 868

Answers (3)

Nikola K.
Nikola K.

Reputation: 7155

Use JavaScript and document.title.

Example:

<script language="javascript">document.title = "My Title"</script>

JS can be used in body.


Another method is to set a $GLOBAL variable before including everything.

Example:

error_reporting(0);
$GLOBALS['404'] = 0;
if ($_GET["error"]=="404") { 
    $GLOBALS['404'] = 1;
    include("forum/styles/art_air/web_template/overall_header.php");
    include("include/404"); 
    include("include/index");
    include("forum/styles/art_air/web_template/overall_footer.php");
} else { 
    $GLOBALS['404'] = 0;
    include("forum/styles/art_air/web_template/overall_header.php");
    include("include/index");
    include("forum/styles/art_air/web_template/overall_footer.php");
}

In your overall_header.php:

if($GLOBALS['404'] == 1) echo '<title>404: Not Found</title>';
else echo '<title>My Title</title>';

Upvotes: 0

Zoltan Toth
Zoltan Toth

Reputation: 47667

In overall_header.php

<?php
$title = "Hello, wolrd!";
if ( $_GET["error"] == "404" ) {
    $title = "Error";
}
?>

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

Upvotes: 2

Andy
Andy

Reputation: 14575

You could try a switch

<?php
$page = $_SERVER['PHP_SELF'];
switch($page) {
    case "index.php":
        echo "<title>My Homepage</title>";
        break;
    case "apples.php":
        echo "<title>The Best Apples!</title>";
        break;
    case "bananas.php":
        echo "<title>We Sell Bananas</title>";
        break;
}
?>

Upvotes: 0

Related Questions