Уникальный title для каждой страници. Как сделать лучше?

Тема в разделе "PHP", создана пользователем slateclub, 25 апр 2010.

Статус темы:
Закрыта.
Модераторы: latteo
  1. slateclub

    slateclub Постоялец

    Регистр.:
    5 ноя 2008
    Сообщения:
    69
    Симпатии:
    4
    Есть сайтик на php. Дизайн загружается из файлов header и footer, т.е по сути для всех страниц используется одинаковый тег title.
    Я делаю разные title вот так:
    • В файле header.php я прописываю <?php echo $title ?>
    • А в каждом отдельном файле, например в index.php в самом верху прописываю <?php $title = "Главная страница сайта"; include "header.php";
      ?>
    А можно ли как-то облегчить эту задачу так, чтобы не в каждом отдельном файле прописывать атрибут $title, а чтобы он загружался из одного единственного файла, например из title.php. Т.е чтобы там были прописаны все страницы сайта, например если index.php, то title=Главная страница, если contact.php, title=Обратная связь и тд.
    Подскажите, кто знает как сделать такой файлик и как его инклудить в тег title в header.php. Заранее очень благодарен за помощь.:)
     
  2. saen

    saen

    Регистр.:
    6 авг 2006
    Сообщения:
    756
    Симпатии:
    129
    для таких целей обычно делают виртуальные страницы в базе данных
     
  3. slateclub

    slateclub Постоялец

    Регистр.:
    5 ноя 2008
    Сообщения:
    69
    Симпатии:
    4
    А что если сайт не использует базу данных? Ведь гораздо проще прописывать и менять title в одном файле, чем в каждом по отдельности. В одном скрипте видел видел вот такую вставку в тег title:
    PHP:
    <?
    switch(
    $n) {
    case 
    'rul'    : echo "Правила"; break;
    case 
    'sta'    : echo "Статистика"; break;
    case 
    '1'    : echo "еще что-то"; break;
    case 
    '2'    : echo "и тд"; break;
    default        : echo 
    "Главная";}
    ?>
    Но это мне не очень подходит, и я попробовал переделать из этого отдельный файлик с подобными данными, но у меня ничего не получилось. Может кто-то привести пример, как вывести все данные заголовков к каждой странице в отдельном файле php, что там должно быть написано, и как это инклудить в файл header.php?
     
  4. Juri

    Juri

    Заблокирован
    Регистр.:
    5 окт 2007
    Сообщения:
    1.068
    Симпатии:
    197
    Мдя... советую познакомиться по ближе с базами данных, будет удобно.
    А пока могу посоветовать Создать файлик с массивом в элементах которых будут лежать ваши титлы,инклудить его в самом начале нужных файлов, а затем просто выводить нужный элемент массива. Я надеюсь с массивами хоть знакомы?:-]
     
  5. slateclub

    slateclub Постоялец

    Регистр.:
    5 ноя 2008
    Сообщения:
    69
    Симпатии:
    4
    да с массивами знаком более менее, но ведь это опять нужно прописывать данные в каждый файл отдельно. У меня сайт пока из 100 страниц, но планируется добавить еще около 150-200. Смысл заключается в том, чтобы в файл header.php в тег title вставить что-то типа <?php include "title.php"; ?>, а в самом этом файлике было бы условие, что if index.php, то title="блаблабла", if content.php, то title="блаблабла" и тд.. Вот такое как-то можно реализовать без базы данных и массивов? Мне кажется, что вполне реально, но после долгих экспериментов, у меня так ничего и не вышло:nezn:, просто в php не очень то силен.
     
  6. Belial

    Belial

    Регистр.:
    1 фев 2010
    Сообщения:
    236
    Симпатии:
    113
    title.php:
    PHP:
    if (basename($_SERVER['REQUEST_URI']) == 'index.php') {
    $title 'blabla';
    }
    if (
    basename($_SERVER['REQUEST_URI']) == 'content.php') {
    $title 'blabla2';
    }
    header.php:
    PHP:
    <?
    include(
    'title.php');
    ?>
    <title><? echo $title ?></title>
    Как-то так, я думаю.
     
    Andrey-varvara, yeaahhh и slateclub нравится это.
  7. Juri

    Juri

    Заблокирован
    Регистр.:
    5 окт 2007
    Сообщения:
    1.068
    Симпатии:
    197

    так как вы описываете все равно придется в этот фалик добавлять новые условия для новых страниц.

    учитие бд и генерируйте титл на лету, в атовмате, проблема отлетит сама собой
     
  8. slateclub

    slateclub Постоялец

    Регистр.:
    5 ноя 2008
    Сообщения:
    69
    Симпатии:
    4
    Ну да, только в одном файле проще править инфу, чем в 250:D, а так конечно нужно изучать базы данных, так как без них по сути никуда:confused:
    Belial большое спасибо, это именно то, что было нужно:az:
     
  9. aivan-aivan

    aivan-aivan Писатель

    Регистр.:
    21 апр 2010
    Сообщения:
    3
    Симпатии:
    0
    Базы данных были созданы во благо, для облегчения работы. Поэтому изучай базы скорее. И совет - отделяй дизайн от кода.
     
  10. slateclub

    slateclub Постоялец

    Регистр.:
    5 ноя 2008
    Сообщения:
    69
    Симпатии:
    4
    Можно пожалуйста поподробней? Чем это плохо? Ведь по собственному опыту знаю, что очень часто просто необходимо внедрять php код в дизайн сайта.
     
Статус темы:
Закрыта.