Что такое сайт на инклудах

PHP — от англ. Personal Home Page :)

Этот небольшой текст для начинающих, так сказать, азы.
Часто можно встретить в объявления о продаже сайтов, что сайт сделан на инклудах. Что это такое и с чем это едят.
Include – это функция PHP, которая просто включает в код страницы заданный файл (можно включать и другие сценарии PHP или удаленные файлы).
Допустим у вас статичный сайт, состоящий из нескольких страниц. Самое простое:

page1.php

  1. <html>
  2. <head>
  3. <title>Страница 1</title>
  4. </head>
  5. <body>
  6. <h1>Заголовок страницы</h1>
  7. <ul id="menu">
  8.    <li><a href="page1.php">Страница 1</a></li>
  9.    <li><a href="page2.php">Страница 2</a></li>
  10.    <li><a href="page3.php">Страница 3</a></li>
  11.    <li><a href="page4.php">Страница 4</a></li>
  12. </ul>
  13. <div id="content">
  14.    <!– Здесь основной контент –>
  15. </div>
  16. <p>&copy; 2010</p>
  17. </body>
  18. </html>

Видим, что наш «сайт» состоит из 4-х страниц. Что происходит, если мы добавим пятую? Правильно, в каждой странице нужно изменить меню и добавить строчку

  1. <li><a href="page5.php">Страница 5</a></li>

А если страниц 100? Намного проще разбить эту страницу на несколько блоков-файлов. Меню в одном файле, футер в другом, контент в 3-ем. Следите, чтобы кодировки всех файлов совпадали.

menu.php

  1. <ul id="menu">
  2.    <li><a href="page1.php">Страница 1</a></li>
  3.    <li><a href="page2.php">Страница 2</a></li>
  4.    <li><a href="page3.php">Страница 3</a></li>
  5.    <li><a href="page4.php">Страница 4</a></li>
  6. </ul>

footer.php

  1. <p>&copy; 2010</p>

Сама страница теперь выглядит так

page1.php

  1. <html>
  2. <head>
  3. <title>Страница 1</title>
  4. </head>
  5. <body>
  6. <h1>Заголовок страницы</h1>
  7. <?php include "menu.php" ?> <!– включаем в код текст файла menu.php –>
  8. <div id="content">
  9.    <!– Здесь основной контент –>
  10. </div>
  11. <?php include "footer.php" ?> <!– включаем в код текст файла footer.php –>
  12. </body>
  13. </html>

Теперь для добавления нового пункта меню на все страницы, достаточно изменить файл menu.php. А чтобы изменить год на всех страницах, изменяем файл footer.php.

Что делать если у страниц вашего сайта расширение .html? Как заставить выполняться скрипты в этих файлах?
Нет ничего проще. Если ваш хостинг поддерживает PHP, достаточно в файле .htaccess добавить вот такую строчку:

AddHandler application/x-httpd-php .html

Еще очень удобно с помощью include включать в код вашего сайта блоки с рекламой. Создаете файл, например adv.php, вносите в него код контекстной рекламы, и в нужном месте страниц вставляете

  1. <?php include "adv.php" ?>

И если вдруг вы решите на время убрать рекламу с вашего сайта или заменить Адсенс на Директ, достаточно будет заменить код в файле adv.php.

Книжки

Предлагаю взять в руки фотоаппарат или телефон и сфотографировать свою книжную полку. Размещайте у себя в блоге, передавайте эстафету другим. Это же так интересно, узнать, что прочел блогер, прежде чем начать писать.
На кликабле фотке моя полка прямо сейчас, естественно это не все книги, а те, что броуновским движением по квартире занесло на полку рабочего стола.
Как можно заметить Олегыч – мой любимый автор. Привет ему ;)

Книжки

Ручная перелинковка в WordPress

Линк (li) (англ. link — звено цепи) — устаревшая британская и американская единица измерения расстояния, равная 20,1168 сантиметрам.

На своих саттелитах и просто хороших сайтах я иногда использую ручную перелинковку. Конечно, можно доверить всю работу плагину Yet Another Related Posts (YARP), но лучше сделать часть перелинковки руками. К тому же контекстные ссылки предпочтительнее, чем просто список похожих постов внизу текста.
Как это выглядит.
Установим плагин YARP, активируем, однако, включать автоматическое размещение не будем. Галочку не ставим.
YARP
При добавлении новой стать статьи, ниже редактора появляется список похожих записей по версии YARP. Теперь нужно подобрать подходящий анкор и вставить ссылку на похожую запись. Однако, в окошке «Связанные посты» ссылки не на сами записи, а на их редактирование, вида post.php?action=edit&post=NN.
Связанные посты
Это неудобно. Подправим немного плагин YARP, что бы связанные посты ссылались на сами посты, и можно было копировать эти ссылки в новый пост, не отходя от кассы. Для этого в папке плагина ищем файл template-metabox.php и меняем одну строку
$output .= "<li><a href='post.php?action=edit&post=$id'>".get_the_title()."</a>";
На
$output .= "<li><a href='".get_permalink()."'>".get_the_title()."</a>";
Сохраняем, заливаем, обновляем и видим, что ссылки в окне «Связанные посты» превратились в прямые ссылки. Теперь их удобно копировать и вставлять при редактировании новой записи.
Копировать адрес ссылки
Пост получился сумбурным. Надеюсь вы поняли о чем это все :)
Если что – я в комментариях.