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

Форум

ЧПУ для Lite версии

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

Возраст: 21
Простейшем способом создания ЧПУ для системы это подмена ссылок перед отдачей HTML в браузер.
Данный хак можно сделать следующим образом:
В каталоге /includes/functions/ создаем файл mod_rewrite.php с примерно таким содержанием
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
$set_link 
= array(
"\\1-\\2-\\4.html",  
"\\1-\\2.html",
"\\1.html"
"index.html",
);

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

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

Сохраняем. Затем открываем файл index.html в нем находим строку
1
$contents = ob_get_contents(); ob_end_clean();
после нее добавляем
1
$contents = replace_link($contents);
далее сохраняем.
На данном этапе преобразование ссылок закончено
После чего нам надо написать правила в .htaccess. данные правила нужно писать с особой внимательностью, чтобы не получилось замкнутой цепочки. И так содержание .htaccess будет у нас примерно таким.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#<?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=$1&do=$[N]
RewriteRule ^([0-9A-Za-z]*)-([A-Za-z]*)-([0-9A-Za-z]*)(/?).html$                              /index.php?module=$1&do=$2&id=$[N]
#RewriteRule (.*) index.html [L]
#
?>


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

Место жительства: Moscow Sity
Возраст: 20
Сейчас попробую

______________________
www.team-players.ru // сайт твоей команды
Вернуться к началу
Berkut
 Добавлено: 20.03.2008 17:54:50        Сообщение #3
Дата регистрации: 02.03.2008

Место жительства: Украина
Чёто у меня не хочет преобразовывать ссылки.
Вернуться к началу
FriZZ
  Добавлено: 21.03.2008 16:15:22        Сообщение #4
Дата регистрации: 14.12.2007

Место жительства: Украина, Киев. )
Очевидно ошибся где то ... проверяй )
Вернуться к началу
Berkut
 Добавлено: 22.03.2008 16:03:30        Сообщение #5
Дата регистрации: 02.03.2008

Место жительства: Украина
Сохраняем. Затем открываем файл index.html в нем находим строку
1
$contents = ob_get_contents(); ob_end_clean();

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


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

Я так понял, что речь идёт о index.html в корне сайта? Добавляю эту строчку, но ссылки остаются обычного вида. Что не так?
Вернуться к началу
BaH6Ka
  Добавлено: 30.03.2008 21:03:11        Сообщение #6
Дата регистрации: 30.03.2008

Возраст: 17
Очень нужная тема, не получается, помогите, за ранее спасибо
Вернуться к началу
Robin
  Добавлено: 30.03.2008 21:07:33        Сообщение #7
Дата регистрации: 30.11.1999

Возраст: 21
Berkut, сорри как только подправлю бб систему чтобы не рубало пхп код выложу тебе инструкцию заново
Вернуться к началу
Berkut
 Добавлено: 06.04.2008 15:13:24        Сообщение #8
Дата регистрации: 02.03.2008

Место жительства: Украина
В хозяйстве пригодится!

~ Добавлено через 07 17.48.03 ~

Robin, ну как там на счёт чпу?
Вернуться к началу
BaH6Ka
  Добавлено: 07.04.2008 20:17:49        Сообщение #9
Дата регистрации: 30.03.2008

Возраст: 17
АП
Вернуться к началу
 
 
Страница сгенерирована за 0.105 секунд и 12 запросов к базе данных за 0.03391 секунд
Web site engine code is Copyright ©2007-2008 by Kasseler CMS. All rights reserved.
Участник проекта CMS Magazine Rambler's Top100