ГлавнаяПрофильНовостиРекомендоватьОбратная связь
 
Kasseler CMS - Система управления сайтом
 
Новая тема Список форумов Kasseler CMS - Система управления сайтом » Разное  
ЧПУ для Lite версии

Robin
Добавлено: 20.03.2008 07:12:30   Заголовок сообщения: ЧПУ для Lite версии#1



Група: Administrator
Возраст: 21
Сообщений: 814
Пользователь №: 1
Спасибо сказали: 40 раз(а)
Дата регистрации: 25.11.2007
Статус: Offline
Простейшем способом создания ЧПУ для системы это подмена ссылок перед отдачей HTML в браузер.
Данный хак можно сделать следующим образом:
В каталоге /includes/functions/ создаем файл mod_rewrite.php с примерно таким содержанием
CODE
< ?php
$set_link = array(
"--.html",  
"-.html",
".html", 
"index.html",
);

$replace_link = array(
"'(?<!/)index.php?module=([0-9A-Za-z]*)&do=([A-Za-z]*)&([0-9A-Za-z]*)=([0-9A-Za-z]*)'",
"'(?<!/)index.php?module=([0-9A-Za-z]*)&do=([A-Za-z]*)'",
"'(?<!/)index.php?module=([0-9A-Za-z]*)'",
"'(?<!/)index.php'",
);

function replace_link($content){
global $replace_link, $set_link;    
    $write = preg_replace($replace_link, $set_link, $content);
    return $write;
}
?>

Сохраняем. Затем открываем файл index.php в нем находим строку
CODE
 $contents = ob_get_contents(); ob_end_clean(); 
после нее добавляем
CODE
 $contents = replace_link($contents); 
далее сохраняем.
На данном этапе преобразование ссылок закончено
После чего нам надо написать правила в .htaccess. данные правила нужно писать с особой внимательностью, чтобы не получилось замкнутой цепочки. И так содержание .htaccess будет у нас примерно таким.
CODE
 #< ?php

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_URI} ^/(i|administrator|blocks|forum|includes|install|modules|templates|uploads)/.*|^(/admin..php|/install.php|/robots.txt|update.php|.*.xls|.*.doc|.*.gif|.*.png|.*.jpg|.*.jpeg)
RewriteRule . - [L]
RewriteRule ^$                                                                                /index.php [N]
RewriteRule ^index.html$                                                                      /index.php [N]
RewriteRule ^([0-9A-Za-z]*)(/?).html$                                                         /index.php?module=ũ [N]
RewriteRule ^([0-9A-Za-z]*)-([A-Za-z]*)(/?).html$                                             /index.php?module=ũ&do=Ū [N]
RewriteRule ^([0-9A-Za-z]*)-([A-Za-z]*)-([0-9A-Za-z]*)(/?).html$                              /index.php?module=ũ&do=Ū&id=ū [N]
#RewriteRule (.*) index.php [L]
#?>


Вот и все ЧПУ для вашего сайта создано. Заранее предупреждаю что данная статья пример как создать ЧПУ для сайта а не полное руководство 8) по созданию полнофункционального ЧПУ для вашего сайта. и корректно на каких жестоких правилах преобразования будут работать страницы до 3 уровня.
_________________________________
Сложность программы растет до тех пор, пока не превысит способности программиста. ©закон Мэрфи
Вернуться к началу Пожаловаться на это сообщение Сказать спасибо
Профиль Личное сообщениеЦитата
Jean
Добавлено: 20.03.2008 07:15:47   Заголовок сообщения: #2


Возраст: 20
Сообщений: 19
Пользователь №: 60
Спасибо сказали: 0 раз(а)
Дата регистрации: 19.03.2008
Место жительства: Moscow Sity
Статус: Offline
Сейчас попробую
_________________________________
www.team-players.ru // сайт твоей команды
Вернуться к началу Пожаловаться на это сообщение Сказать спасибо
Профиль Личное сообщениеЦитата
Berkut
Добавлено: 20.03.2008 17:54:50   Заголовок сообщения: #3



Група: Новичок
Сообщений: 49
Пользователь №: 52
Спасибо сказали: 0 раз(а)
Дата регистрации: 02.03.2008
Место жительства: Украина
Статус: Offline
Чёто у меня не хочет преобразовывать ссылки.
Вернуться к началу Пожаловаться на это сообщение Сказать спасибо
Профиль Личное сообщениеЦитата
FriZZ
Добавлено: 21.03.2008 16:15:22   Заголовок сообщения: #4



Група: Support
Сообщений: 38
Пользователь №: 12
Спасибо сказали: 0 раз(а)
Дата регистрации: 14.12.2007
Место жительства: Украина, Киев. )
Статус: Offline
Очевидно ошибся где то ... проверяй )
Вернуться к началу Пожаловаться на это сообщение Сказать спасибо
Профиль Личное сообщениеЦитата
Berkut
Добавлено: 22.03.2008 16:03:30   Заголовок сообщения: #5



Група: Новичок
Сообщений: 49
Пользователь №: 52
Спасибо сказали: 0 раз(а)
Дата регистрации: 02.03.2008
Место жительства: Украина
Статус: Offline
QUOTE
Сохраняем. Затем открываем файл index.html в нем находим строку
CODE
$contents = ob_get_contents(); ob_end_clean(); 

после нее добавляем
CODE
$contents =  ($contents); 


далее сохраняем.

Я так понял, что речь идёт о index.php в корне сайта? Добавляю эту строчку, но ссылки остаются обычного вида. Что не так?


Последний раз редактировалось: 22.03.2008 16:04:25
Вернуться к началу Пожаловаться на это сообщение Сказать спасибо
Профиль Личное сообщениеЦитата
BaH6Ka
Добавлено: 30.03.2008 21:03:11   Заголовок сообщения: #6


Возраст: 18
Сообщений: 5
Пользователь №: 66
Спасибо сказали: 0 раз(а)
Дата регистрации: 30.03.2008
Статус: Offline
Очень нужная тема, не получается, помогите, за ранее спасибо
Вернуться к началу Пожаловаться на это сообщение Сказать спасибо
Профиль Личное сообщениеЦитата
Robin
Добавлено: 30.03.2008 21:07:33   Заголовок сообщения: #7



Група: Administrator
Возраст: 21
Сообщений: 814
Пользователь №: 1
Спасибо сказали: 40 раз(а)
Дата регистрации: 25.11.2007
Статус: Offline
Berkut, сорри как только подправлю бб систему чтобы не рубало пхп код выложу тебе инструкцию заново
_________________________________
Сложность программы растет до тех пор, пока не превысит способности программиста. ©закон Мэрфи
Вернуться к началу Пожаловаться на это сообщение Сказать спасибо
Профиль Личное сообщениеЦитата
Berkut
Добавлено: 06.04.2008 15:13:24   Заголовок сообщения: #8



Група: Новичок
Сообщений: 49
Пользователь №: 52
Спасибо сказали: 0 раз(а)
Дата регистрации: 02.03.2008
Место жительства: Украина
Статус: Offline
В хозяйстве пригодится!~ Добавлено через 07 17.48.03 ~Robin, ну как там на счёт чпу?


Последний раз редактировалось: 30.03.2008 21:25:49
Вернуться к началу Пожаловаться на это сообщение Сказать спасибо
Профиль Личное сообщениеЦитата
BaH6Ka
Добавлено: 07.04.2008 20:17:49   Заголовок сообщения: #9


Возраст: 18
Сообщений: 5
Пользователь №: 66
Спасибо сказали: 0 раз(а)
Дата регистрации: 30.03.2008
Статус: Offline
АП
Вернуться к началу Пожаловаться на это сообщение Сказать спасибо
Профиль Личное сообщениеЦитата
Список форумов Kasseler CMS - Система управления сайтом » Разное
 
Новая тема
Страница: 1 из 1 Вы можете просматривать темы
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать сообщения
Вы не можете удалять сообщения
Вы не можете модерировать этот форум

 
Страница сгенерирована за 0.187 секунд и 13 запросов к базе данных за 0.04409 секунд Web site engine code is Copyright © 2007-2008 by Kasseler CMS. All rights reserved.
Участник проекта CMS Magazine Rambler's Top100