Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 49 Ответов
  • 4434 Просмотров
*

taiber

  • Захожу иногда
  • 59
  • 1 / 0
Re: Убрать категории из адреса. Как?
« Ответ #30 : 14.02.2015, 19:30:41 »
Если убирать ид из роутера таким способом то ссылка должна быть вида $link = JURI::root().$this->item->alias . Работает кстатии тоже.
Это в каком файле? И можно поподробннее, пожалуйста.
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Убрать категории из адреса. Как?
« Ответ #31 : 15.02.2015, 01:52:32 »
taiber, вы готовы менять ядро Joomla?
Не будь паразитом, сделай что-нибудь самостоятельно!
*

taiber

  • Захожу иногда
  • 59
  • 1 / 0
Re: Убрать категории из адреса. Как?
« Ответ #32 : 15.02.2015, 15:17:51 »
robert, у меня стоит J 2.5.28, обновлений не будет. Наверное, придется, если больше нет вариантов.

Забыл написать: сделал, как советовал zomby6888 - $link = JURI::root().$this->item->alias в blog_item.php. На статьях 404 ошибка. (
 
« Последнее редактирование: 15.02.2015, 15:23:53 от taiber »
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Убрать категории из адреса. Как?
« Ответ #33 : 15.02.2015, 16:02:01 »
ОК.
/includes/router.php стр. 364
Код: php-brief
$tmp = !empty($tmp)? $item->route.'/'.$tmp : $item->route;
поменять на
Код: php-brief
if(empty($tmp)){
$tmp = $item->route;
}else{
if($item->query['option']!='com_content'){
$tmp = $item->route.'/'.$tmp;
}
}
Это исправит URL материалов привязанных к меню категорий.
/components/com_content/router.php стр. 130
Код: php-brief
$segments = array_merge($segments, $array);
поменять на
Код: php-brief
if ($view != 'article') {
$segments = array_merge($segments, $array);
}
Это уберет алиас категорий, не имеющих пунктов меню.
Попробуйте на свой страх и риск - не ручаюсь за 100%-работоспособность :).
Не будь паразитом, сделай что-нибудь самостоятельно!
*

taiber

  • Захожу иногда
  • 59
  • 1 / 0
Re: Убрать категории из адреса. Как?
« Ответ #34 : 16.02.2015, 13:14:23 »
Спасибо robert!
Сделал, как Вы советутете. Категории 1 и 2 уровня в URL есть, в Блоге выводится интро материалов, но при клике на материал перенаправляет на

site.ru/article с 404 ошибкой.
Убрал все предыдущие хаки из файлов, описанные на 1-й странице, результат тот же.
Чеж я такой "везучий", блин. ((

*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Убрать категории из адреса. Как?
« Ответ #35 : 16.02.2015, 14:18:24 »
А, у вас sef_advanced_link=1, да? Тогда поменяйте стр. 226
Код: php-brief
$vars['id'] = (int)$segments[0];
на
Код: php-brief
if($advanced){
$db->setQuery('SELECT id, catid FROM #__content WHERE alias LIKE "%'.$segments[0].'%"');
$article=$db->loadObject();
$vars['catid'] = (int)$article->catid;
$vars['id'] = (int)$article->id;
}else{
$vars['id'] = (int)$segments[0];
}
« Последнее редактирование: 16.02.2015, 23:51:29 от robert »
Не будь паразитом, сделай что-нибудь самостоятельно!
*

taiber

  • Захожу иногда
  • 59
  • 1 / 0
Re: Убрать категории из адреса. Как?
« Ответ #36 : 16.02.2015, 22:28:59 »
sef_advanced_link=1, да. В двух местах: прмерно 27 стр. и 230.
Все равно на статьях 404 ошибка. Че только не менял, уже крыша едет. Щас в роутере
этот кусок кода такой: 

Код: css
if (strpos($segments[0], ':') === false) {
if($advanced){
$db->setQuery('SELECT id, catid FROM #__content WHERE alias LIKE "%'.$segments[0].'%"');
$article=$db->loadObject();
$vars['catid'] = (int)$article->catid;
$vars['id'] = (int)$article->id;
  } else {
$vars['id'] = (int)$segments[0];
}
return $vars;
}

list($id, $alias) = explode(':', $segments[0], 2);

Может, че неправильно?
« Последнее редактирование: 16.02.2015, 22:36:53 от taiber »
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Убрать категории из адреса. Как?
« Ответ #37 : 16.02.2015, 23:52:18 »
Sorry, опечатка. Исправил.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

taiber

  • Захожу иногда
  • 59
  • 1 / 0
Re: Убрать категории из адреса. Как?
« Ответ #38 : 17.02.2015, 15:35:12 »
Спасибо. Я тоже исправил, но результат тот же - 404.(( Уже не знаю на что думать. Может я где накосячил.
robert, посмотрите мой роутер, пожалуйста.

Спойлер
[свернуть]
« Последнее редактирование: 17.02.2015, 15:38:33 от taiber »
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Убрать категории из адреса. Как?
« Ответ #39 : 17.02.2015, 15:38:13 »
У Вас блог к главной привязан?
интернет-блог: http://websiteprog.ru
*

taiber

  • Захожу иногда
  • 59
  • 1 / 0
Re: Убрать категории из адреса. Как?
« Ответ #40 : 17.02.2015, 15:41:05 »
У Вас блог к главной привязан?
У меня 2 родительских/главных категорий. Как 2 привязать, никак?
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Убрать категории из адреса. Как?
« Ответ #41 : 17.02.2015, 17:01:40 »
Одну хотя бы привяжите и все будет работать без лишних телодвижений, иначе все урлы вида site.ru/article_alias не будет обрабатывать компонент com_content.
интернет-блог: http://websiteprog.ru
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Убрать категории из адреса. Как?
« Ответ #42 : 17.02.2015, 18:02:58 »
Чтобы работали ссылки вида site.ru/alias все категории должны быть привязаны к меню (необязательно к главной). В общем, чтобы до конца учесть все косяки, нужно время. А мне это не нужно, просто ради интереса поковырял чуть-чуть. Прикрепил свои router.php
Не будь паразитом, сделай что-нибудь самостоятельно!
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Убрать категории из адреса. Как?
« Ответ #43 : 17.02.2015, 18:10:12 »
Чтобы без косяков и хаков, я бы вобще лучше написал простенький компонент для вывода метериалов, прописал бы там нормальный роутинг и привязал к главной.
интернет-блог: http://websiteprog.ru
*

taiber

  • Захожу иногда
  • 59
  • 1 / 0
Re: Убрать категории из адреса. Как?
« Ответ #44 : 20.02.2015, 13:50:27 »
Одну хотя бы привяжите и все будет работать без лишних телодвижений, иначе все урлы вида site.ru/article_alias не будет обрабатывать компонент com_content.
zomby6888, привязывал, но получается или ID у статей, или 404 ошибка - это в других катег., в которые скопирована статья.

Чтобы работали ссылки вида site.ru/alias все категории должны быть привязаны к меню (необязательно к главной). В общем, чтобы до конца учесть все косяки, нужно время. А мне это не нужно, просто ради интереса поковырял чуть-чуть. Прикрепил свои router.php

robert, не получается с этими роутерами. ( На одном такое:
Fatal error: Cannot redeclare class JRouterSite in X:\home\localhost\www\hk\components\com_content\router.php on line 489

Проблему перенапрвления не получилось решить.
Тем не менее, благодарен всем за советы и готовые решения.
Спасибо! )
« Последнее редактирование: 20.02.2015, 13:53:53 от taiber »
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Убрать категории из адреса. Как?
« Ответ #45 : 20.02.2015, 21:01:58 »
Fatal error: Cannot redeclare class JRouterSite in X:\home\localhost\www\hk\components\com_content\router.php on line 489
Вы их перепутали: этот должен лежать в /includes, а другой - в /components/com_content.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

taiber

  • Захожу иногда
  • 59
  • 1 / 0
Re: Убрать категории из адреса. Как?
« Ответ #46 : 23.02.2015, 21:44:39 »
Вы их перепутали: этот должен лежать в /includes, а другой - в /components/com_content.
Может быть. ) Сделал как надо с роутерами. Категории/сабкатегории привязаны к меню.
Такие URL показывает:

site.ru/korm/koshki

а на статьях: site.ru/article - все равно 404 ошибка. (
Если сабкатегории нет в меню, тоже 404.
Пробовал Блог ставить главной, править blog_item.php, результат одинаковый.
« Последнее редактирование: 23.02.2015, 21:48:19 от taiber »
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Убрать категории из адреса. Как?
« Ответ #47 : 23.02.2015, 22:19:19 »
У меня работает. Стандартный шаблон Joomla без правок.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

taiber

  • Захожу иногда
  • 59
  • 1 / 0
Re: Убрать категории из адреса. Как?
« Ответ #48 : 24.02.2015, 19:44:13 »
У меня шаб отсюда: http://joomlatemplates.me/ - Smart. Вроде, тоже ничего сложного в нем нет. Правил только CSS - до неунаваемости.) Однако, перенаправления работают некорректно. (
*

grisina

  • Новичок
  • 2
  • 0 / 0
Re: Убрать категории из адреса. Как?
« Ответ #49 : 25.02.2015, 11:51:16 »
Чтобы управлять УРЛами, используйте пункты меню. Т.е., чтобы получить site/article нужно создать пункт меню первого уровня. А чтобы site/category/article — второго, где category  может быть пунктом меню любого типа, хоть внешний URL.
Для избавления от дублей на данный момент лучшее решение — плагин от JoomLine. Легко гуглится.
интериорни врати
« Последнее редактирование: 04.03.2015, 16:39:49 от grisina »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Перенаправление htaccess с id в категории на без id

Автор MultiMatrix83

Ответов: 14
Просмотров: 2298
Последний ответ 30.01.2024, 02:03:44
от Zegeberg
Вывести поле изображение материала в модуле "Список материалов категории"

Автор aleksandrozz

Ответов: 12
Просмотров: 11445
Последний ответ 14.10.2022, 05:12:04
от denxio
Закрыть от индексации только страницу категории

Автор DDAANN

Ответов: 5
Просмотров: 2363
Последний ответ 07.03.2021, 13:23:34
от Followme
[FAQ] Как убрать <meta name="generator" content="Joomla! 2.5 - Open Source Content Management" />

Автор neket

Ответов: 56
Просмотров: 311879
Последний ответ 05.11.2020, 20:00:15
от Grigoriy82
Убрать название пункта меню из URL материала

Автор fortuner

Ответов: 15
Просмотров: 8168
Последний ответ 31.10.2020, 00:46:04
от spas