Как сделать разный title если header везде одинаковый?

В PHP можно динамически менять содержимое тега <title> страницы, даже если заголовок (<h1>, <h2>, и т. д.) на страницах одинаковый. Для этого можно использовать условные операторы или переменные, содержащие различные значения для <title> в зависимости от условий.

Предположим, что заголовок (<h1>) на вашей странице одинаков для всех страниц, а вы хотите, чтобы <title> отображал разное содержимое для каждой отдельной страницы. В этом случае вы можете использовать суперглобальный массив $_SERVER для определения текущего URL и на его основе задавать разные значения для <title>.

Ниже приведен пример кода на PHP, который поможет вам реализовать эту задачу:

<?php
// Получаем текущий URL
$currentUrl = $_SERVER['REQUEST_URI'];

// Определяем значение `<title>` в зависимости от URL
$title = '';
if ($currentUrl == '/about.php') {
    $title = 'О нас';
} elseif ($currentUrl == '/contact.php') {
    $title = 'Контакты';
} else {
    $title = 'Главная';
}
?>

<!DOCTYPE html>
<html>
<head>
    <title><?php echo $title; ?></title>
</head>
<body>
    <h1>Заголовок страницы</h1>
    <!-- Остальное содержимое страницы -->
</body>
</html>

В этом примере мы получаем текущий URL из суперглобального массива $_SERVER и сравниваем его со значением каждой отдельной страницы. В соответствии с этим сравнением мы присваиваем переменной $title соответствующее значение. Затем мы выводим это значение внутри тега <title> при помощи конструкции <?php echo $title; ?>.

Вы можете расширить этот пример для добавления иных страниц и определения значений для <title> в соответствии с вашими требованиями.