Примечание:

Примечание: “Урл” – он же URL – универсальный адрес ресурса, она же ссылка на ресурс. Человеко-понятные урлы – это ссылки, которые выглядят не запутанным нагромождением вопросительных знаков и амперсандов (значок &) и передаваемых в них параметров (типа такого – view_bill. php? id_bill=11 – и это еще не самый страшный вариант), а как ссылки на статичные html-страницы – например bill_11.htm. Кроме того, что они воспринимаются гораздо легче человеком, такие ссылки охотнее воспринимаются поисковыми истемами (мнение кстати, довольно спорное – но большинство склоняется к нему), что приводит к лучшей индексации таких страниц – и соответвенно лучшему нахождению сайта пользователями. Что в конечном итоге нам и надо.

Примечание:

Что бы отработать технику создания ЧПУ при помощи Smarty – вы можете скачать демо-версию Cкрипт продажи недвижимости – в ней есть уже подключенный Smarty, есть тестовое объявление и полностью сохранена работа с шаблонами. Все примеры ниже будут на базе шаблонов именно этой демо-версии. Для создания этих самых ЧПУ в любом из скриптов, используюущем шаблонизатор Smarty (в частности, одним из моих готовых скриптов) нам понадобятся: – модуль для Апача mod_rewrite (обычно уже установлен на сервере, если не уверены – поинтересуйтесь у своего хостинг-провайдера) – файл .htaccess (также обычно на платном хостинге доступен для использования) – непосредственно файлы-шаблоны, отвечающие в скрипте за вывод ссылок, которые мы и должны изменить. Приступим к “приготовлению”. 1. Создаем файл. htaccess – если он у вас уже есть, то просто открываем его и добавляем новые строки – например у его конец. Файл должен находится в папке стем скриптом, для которого мы “готовим” наши ЧПУ. 2. В нем прописываются правила замены – как именно должен сервер изменять урлы – так как по сути, меняя ссылки, мы никак не затрагиваем работу скриптов – а они по прежнему должны получать ожидаемые параметры через ссылку. Значит нужно, что бы сервер “переводил” те “понятные” ссылки, которые мы сделаем – в вид “непонятны” человеку, но понятных скрипту. Этим и занимается модуль Апача mod_rewrite. Пример записи в файл. htaccess, в котором определяются правила замены ссылок вида bill_22.htm (22 – случайный номер, зависит от конкретного объявления, это его id номер) на понятную скрипту ссылку view_bill. php? id=22. RewriteEngine On RewriteRule ^bill_(.*).htm$ view_bill. php? id=textarea Подробнее о командах, используемых в файле: RewriteEngine On – это отметка о включении применения правил переделки “урлов” RewriteRule ^bill_(.*).htm$ view_bill. php? id=textarea А это правило, которое преобразует ссылки вида bill_12.htm в понятный для скрипта вид view_bill. php? id=12 Символ ^ – означает начало строки, а символ $ – ее конца знак textarea – это тот символ – в нашем случае уникальный номер объвления, который получается при обработке ссылки – и захватывается он при помощи выражения (.*) в нашей строке поиска и замены. Дальше – на сайте нужно организовать создание этих самых понятных урлов (вида bill_12.htm). Делается это в шаблоне – для скрипта недвижимости это например шаблон вывод списка объявлений – tpl/template/view/_list_bill. tpl. В шаблонном файле находим строки, которые формируют ссылку на объявления, вот например эта: < a href=”bill. php? id={$bill. id}” target=”_blank” >< img src=”img/dop_img/lup. gif” border=”0″ /> и в ней меняем соответственно bill. php? id={$bill. id} на bill_{$bill. id}.htm Как видите – для получения номера объявления используем переменную Smarty {$bill. id}. Таким образом на сайте ссылки будут выглядеть как bill_12.htm (например), а для скрипт сервер их переделает в view_bill. php? id=12

Понравилась статья? Получай обновления и будь всегда в курсе событий!
Подпишись на RSS или
blog comments powered by Disqus