PHP

Вывести html код только на главной (или любой другой) странице сайта через php

При создании сайтов на Joomla, WordPress и других движках, где есть поддержка php прямо в шаблоне, очень часто требуется определить текущую ссылку документа. И в зависимости от нее например, загружать новые скрипты, блоки CSS стили.

Например, возьмем движок Joomla. Раньше для главной и внутренней страниц я делал два шаблона. Это было очень не удобно, ведь если я изменял шапку на главной, то приходилось эти изменения делать и на внутреннем шаблоне. После изучения PHP я нашел прекрасное решение через суперглобальный массив $_SERVER. Теперь от слов к делу.

Чтобы через PHP определить текущую ссылку используйте $_SERVER['REQUEST_URI']. Например, если вы напишите в вашем сайте: <?php echo $_SERVER['REQUEST_URI']; ?> , то при открытии его в браузере увидите ссылку текущей страницы. К примеру, для этого поста она была бы такой: /vyvesti-html-kod-na-glavnoj-stranice-sajta-cherez-php-opredelit-tekushhuyu-ssylku-sajta/

Заметьте ссылка печатается без привязки домена - это очень полезно, если вы, к примеру разрабатываете сайт на денвере, а потом переносите на сервер, то вам не придется постоянно менять домен в коде.

Теперь о том, как вывести любой html код, подключить css и js только на главной странице, а к примеру на остальных, что-то другое. Используйте следующую конструкцию:

<?php if($_SERVER['REQUEST_URI'] == '/') { ?>
Здесь выводится абсолютно любой html код только на главной, также здесь вы можете подключать css и js скрипты
<?php } else { ?>
Здесь выводится код на всех внутренних страницах
<?php } ?>

Вывести код на любой произвольной странице сайта:

<?php if($_SERVER['REQUEST_URI'] == '/vasha-proizvolnaya-stranica/') { ?>
Здесь выводится абсолютно любой html код
<?php } ?>

Вывести код на любой странице сайта, кроме главной:

<?php if($_SERVER['REQUEST_URI'] != '/') { ?>
Здесь выводится абсолютно любой html код
<?php } ?>

Думаю из этих примеров легко понять как работает $_SERVER['REQUEST_URI']. Используйте эту конструкцию в своих сайтах, чтобы упростить код и сделать его более функциональным.