ЧПУ Virtuemart 2.0
- kvaru
- Автор темы
- Не в сети
- Новый участник
- Сообщений: 4
- Спасибо получено: 1
Установил релиз VirtueMart 2.0 на Joomla 1.7.
Ссылка на карточку товара выглядит так: /component/virtuemart/hand-tools/G01-detail.html.
У меня возникло два вопроса.
1.Подскажите как избавиться от "/component/virtuemart" и таким образом сократить url? так будет более человечная ссылка.
2. Если из настроек удаляю дописываемый SEO-суффикс -detail, то при открытии карточки товара происходит ошибка. Для чего этот SEO-суффикс -detail и как его убрать?
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- kvaru
- Автор темы
- Не в сети
- Новый участник
- Сообщений: 4
- Спасибо получено: 1
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- bionetinfo
- Не в сети
- Завсегдатай
- Сообщений: 157
- Спасибо получено: 39
Наверное за 3 недели решение просто никто еще не успел найти или пока не спешат использовать VM2 по известным причинам.kvaru пишет: неужели нет решения во 2-й версии viruemart как сделать человеческие url-лы?
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- Wedal
- Не в сети
- Администратор
- Сообщений: 2868
- Спасибо получено: 659
1) Если знания PHP позволяют, правим router.php от Virtuemart 2
2) Если п.1 не подходит, скачиваем SEF-компонент с поддержкой Virtuemart 2(например, SH404SEF, хотя я не уверен, что поддержка VM2 уже включена в него)
3) Если п.1 и п.2 не подходят, то либо довольствуемся тем, что есть, либо заказываем доработку за деньги, либо ждем, пока сообщество создаст решение.
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- Lorian
- Не в сети
- Новый участник
- Сообщений: 2
- Спасибо получено: 0
для того чтобы убрать .../component/virtuemart/....
Нужно смотреть файл не в виртумарте а в фаил router.php который Jooml-ы и находится в папочке
includes\ router.php где и что подправить каждый решает для себя сам но формирование ссылок и парсинг производится в строчках 344-347 и 194-198 .... bingo .
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- Lorian
- Не в сети
- Новый участник
- Сообщений: 2
- Спасибо получено: 0
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- Lelik
- Не в сети
- Новый участник
- Сообщений: 4
- Спасибо получено: 0
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- roggi
- Не в сети
- Захожу иногда
- Сообщений: 31
- Спасибо получено: 0
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- vagant
- Не в сети
- Давно я тут
- Сообщений: 67
- Спасибо получено: 7
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- Wedal
- Не в сети
- Администратор
- Сообщений: 2868
- Спасибо получено: 659
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- vagant
- Не в сети
- Давно я тут
- Сообщений: 67
- Спасибо получено: 7
если бы исключить из ссылок товара суфикс -detail (то что он изменяется в настройках да видел, но если его там просто убрать то товары не показываются) и оставить отображение только последнего раздела исключить/katalog/:
www.site.ru/razdel/tovar-A141.html - так было в joomla 1,5 + sh404sef
www.site.ru/katalog/razdel/tovar-A141-detail.html - так сейчас с включенным стандартным сео
и еще
www.site.ru/razdel/info.html - так было в joomla 1,5 + sh404sef
www.site.ru/katalog/razdel/info.html - так сейчас с включенным стандартным сео
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- maler1988
- Не в сети
- Новый участник
- Сообщений: 3
- Спасибо получено: 0
файл router.php который находится в папке
includes\ router.php
370 строка
if (!$built) {
$tmp = 'component/'.substr($query, 4).'/'.$tmp;
}
вместо 'component/'.substr($query, 4).'/'.$tmp; я вставил 'katalog/'.$tmp; Где katalog - это ЧПУ ссылки в родительскую категорию Virtuemart (2.0.6). Теперь все ЧПУ рисуются правильно. домен /katalog/musik/metal/metllica_reload_1996 и т.п. а по ссылке /component/virtuemart/musik/metal/metllica_reload_1996 404 ошибка , т.е. задвоения поисковик не найдёт. И хлебные крошки кстати тоже правильные формируются.
Не очень профессионально, но разбираться некогда со всеми механизмами компонента.
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- maler1988
- Не в сети
- Новый участник
- Сообщений: 3
- Спасибо получено: 0
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- marochka
- Не в сети
- Новый участник
- Сообщений: 1
- Спасибо получено: 0
{
$vars = 'com_'.$segments[1];
$vars = null;
$route = implode('/', array_slice($segments, 2));
}
else
меняем на
if (count($segments) > 1 && $segments[0] == 'component')
{
$vars = 'com_'.$segments[1];
$vars = null;
$route = implode('/', array_slice($segments, 2));
}
elseif($segments[0]=='katalog'){
$vars = 'com_virtuemart';
$vars = null;
$route = implode('/', array_slice($segments, 2));
}
else
if (!$built) {
$tmp = 'component/'.substr($query, 4).'/'.$tmp;
}
меяем на
if (!$built) {
if(substr($query, 4)!="virtuemart")
$tmp = 'component/'.substr($query, 4).'/'.$tmp;
else $tmp = 'katalog/'.$tmp;
}
слово katalog можно заменить на другое, главное не забыть сделать и там и там
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- AHTEPO
- Не в сети
- Новый участник
- Сообщений: 2
- Спасибо получено: 0
Проанализировав внушительное количество статей по преобразованию файлов router.php для VM2 так и не нашёл ответа на вопрос - можно ли получить ссылки типа mysite.ru/shop/5678 (или mysite.ru/shop/5678.html), где 5678 - номер товара (item id)?
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- Wedal
- Не в сети
- Администратор
- Сообщений: 2868
- Спасибо получено: 659
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- AHTEPO
- Не в сети
- Новый участник
- Сообщений: 2
- Спасибо получено: 0
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- Иван Стругацкий
- Не в сети
- Новый участник
- Сообщений: 2
- Спасибо получено: 0
Был сай на Joomla 1.5 + VirtueMart + sh404SEF
В sh404SEF был включен пункт - "Добавить категории" - "только одна последняя"
Были ссылки www.site.ru/категория или подкатегория/товар.html
Переношу сайт на Joomla 2.5.11 + VirtueMart 2.0.20b
Сейчас ссылки www.site.ru/категория/подкатегория/товар.html - с включенным стандартным сео Joomla и VirtueMart и созданными пунктами меню.
Требуется в URL оставить только последнюю категорию то бишь так как было.
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- Wedal
- Не в сети
- Администратор
- Сообщений: 2868
- Спасибо получено: 659
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- mazurik
- Не в сети
- Новый участник
- Сообщений: 3
- Спасибо получено: 0
Тут категории создаются вида xxx.ru/perednyaya-i-zadnyaya-podveska.html
нужно сделать адрес таким: xxx.ru/component/virtuemart/category/perednyaya-i-zadnyaya-podveska.html
Знаю, что это хуже для сео, но нужно именно так! Понимаю, что копать надо роутер, но куда именно вносить правки - не пойму.
Помогите, пожалуйста. Заранее спасибо!
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.
- mazurik
- Не в сети
- Новый участник
- Сообщений: 3
- Спасибо получено: 0
Пожалуйста Войти или Зарегистрируйтесь, чтобы присоединиться к беседе.