Открыть Ответить

Нужно подправить URL в Slaed 2.5

0.00

0.00

1
06.01.2010 22:36:52

Есть у меня сайтик, лента новостей. Сайт этот в сети с 2006 года, базируется он на Slaed 2.0 И вот сегодня я созрел перенсти его на Slaed 2.5 Удачно конвертировал базу с новостями. Но есть одна загвоздочка. Так как сайт в инете уже почти четыре года, яша проиндексировал более 20 К страниц. И ссылки на Slaed 2.0 Выглядят вот так:
index.php?name=News&file=article&sid=3156.

А в Slaed 2.5 вот так:
index.php?name=News&op=article&sid=3156

Подскажите, где копать, чтобы в Slaed 2.5 Ссылки выглядели бы так же, как и в Slaed 2.0, то есть вместо News&op=article было бы так News&file=article

Большое спасибо!

Группа
Активисты
Пункты
10766
Регистрация
28.10.2005
Пол
Мужчина
Из
Москва
Предупреждения
Нет
otherside
otherside
3.97

3.97

07.01.2010 05:47:46 07.01.2010 05:50:56

otherside, проще через config_rewrite.php

$rewrite_out = array(<br /> "index.php&#063;name=News&file=\\1"<br /> );

$rewrite_in = array(<br /> "'(&#063;<!/)index.php\&#063;name=News&op=([&;{}()._a-zA-Z0-9+=-]*)'"<br /> );

А в .htaccess сделать обратное преобразование.

Группа
Супермодераторы
Пункты
1595
Регистрация
18.09.2008
Пол
Мужчина
Из
Россия
Предупреждения
Нет
GRAFLEKX
GRAFLEKX
3.92

3.92

07.01.2010 13:30:29

GRAFLEKX, благодарю. Это первое о чем подуал, но, как всегда, есть одно НО! Долго объяснять вообщем, но нужно сделать не через config_rewrite.php

Группа
Активисты
Пункты
10766
Регистрация
28.10.2005
Пол
Мужчина
Из
Москва
Предупреждения
Нет
otherside
otherside
3.97

3.97

07.01.2010 18:52:06

Товарищи, прощу прощения, UP! Уже все сделал, остлаось только ссылки подправить. Сам ни как не могу доперить.

Группа
Активисты
Пункты
10766
Регистрация
28.10.2005
Пол
Мужчина
Из
Москва
Предупреждения
Нет
otherside
otherside
3.97

3.97

08.01.2010 13:39:03

GRAFLEKX, так как других решений пока не придумано, решил все таки сделать как ты сказал. На первый взгляд все хорошо, ссылки на всем сайте поменялись и стали выглядеть так: /index.php?name=News&file=article&sid=3156 Но когда на них кликаешь, сразу же перекидываеть на index.php
Кажется мне, сто причина в файле index.php который в корне сайта лежит

Группа
Активисты
Пункты
10766
Регистрация
28.10.2005
Пол
Мужчина
Из
Москва
Предупреждения
Нет
otherside
otherside
3.97

3.97

08.01.2010 16:21:00

Все, тему можно закрывать. Как всегда, один замечательный человек из Пензы наставил на путь истинный!

Группа
Активисты
Пункты
10766
Регистрация
28.10.2005
Пол
Мужчина
Из
Москва
Предупреждения
Нет
otherside
otherside
3.97

3.97

09.01.2010 03:21:35

GRAFLEKX, так как других решений пока не придумано, решил все таки сделать как ты сказал. На первый взгляд все хорошо, ссылки на всем сайте поменялись и стали выглядеть так: /index.php?name=News&file=article&sid=3156 Но когда на них кликаешь, сразу же перекидываеть на index.php
Кажется мне, сто причина в файле index.php который в корне сайта лежит


Причина в том, что надо было обратное преобразование сделать в в .htaccess, я об этом писал выше.
Такого адреса нет, и естественно он обрабатывается как 404 и перекидывает на index.php.

Все, тему можно закрывать. Как всегда, один замечательный человек из Пензы наставил на путь истинный!


Ну дык поделитесь решением то?
Вы же пришли сюда найти решение, возможно такое же решение будут искать и другие! Хотя бы саму суть.

Группа
Супермодераторы
Пункты
1595
Регистрация
18.09.2008
Пол
Мужчина
Из
Россия
Предупреждения
Нет
GRAFLEKX
GRAFLEKX
3.92

3.92

09.01.2010 16:28:52


Причина в том, что надо было обратное преобразование сделать в в .htaccess, я об этом писал выше.
Такого адреса нет, и естественно он обрабатывается как 404 и перекидывает на index.php.
Ну дык поделитесь решением то?
Вы же пришли сюда найти решение, возможно такое же решение будут искать и другие! Хотя бы саму суть.


Да нет, в .htaccess я все прописал. А решение вот такое:
В файле index.php в корне сайта найти:
if (!isset($_REQUEST['op'])) $op = "";
if (isset($_GET['file']) || isset($_POST['file'])) {
	$file = trim(isset($_POST['file']) ? $_POST['file'] : $_GET['file']);
	if (preg_match("/[^a-zA-Z0-9_]/", $file)) {
		Header("Location: index.php");
		exit;
	}
} else {
	$file = "index";
}


и заменить на:
if (isset($_GET['file']) || isset($_POST['file'])) {
$op = trim(isset($_POST['file']) ? $_POST['file'] : $_GET['file']);
}

	$file = "index";

Ну и естественно проделать все, что было сказано выше в .htaccess и config_rewrite.php

Группа
Активисты
Пункты
10766
Регистрация
28.10.2005
Пол
Мужчина
Из
Москва
Предупреждения
Нет
otherside
otherside
3.97

3.97

Открыть Ответить
Хотите опробовать SLAED CMS в действии?
Идеи и предложения
Обратная связь
Подтверждение

Поделиться
QR-код