Новости Joomla

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

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Доброго времени суток.
Собственно, сабж.
Используется стандартный com_content. Имею ссылку вида: sitename/cat/37-subcat/180-article.html
На cat имеется ссылка меню, поэтому id не выводится. Как убрать id из subcat и article?

Поиск по форму ничего не дал (множество имеющихся вариантов подходят только для К2).
« Последнее редактирование: 16.02.2014, 16:20:56 от AlekVolsk »
*

KSS

  • Захожу иногда
  • 58
  • 0 / 0
в файле components/com_content/router.php
заменить
->where($db->quoteName('alias'). ' = ' . $db->quote($db->quote($segment)));
на
->where($db->quoteName('alias'). ' = ' . $db->quote($segment));

*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
хмм, а в шаблоне это можно как-нибудь переопределить?
templname/html/com_content/router.php ?
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
в файле components/com_content/router.php
заменить
->where($db->quoteName('alias'). ' = ' . $db->quote($db->quote($segment)));
на
->where($db->quoteName('alias'). ' = ' . $db->quote($segment));
Это не помогло.
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Уточню, т.к. подозреваю, что не совсем корректно задал вопрос: ссылка = url в адресной строке браузера.
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
По идее это можно реализовать, потому что у категории и материала есть алиас (псевдоним), уникальность которого система впринципе обеспечивает на програмном уровне. Не знаю почему компонент по умолчанию использует ид в урлах, однако если вы хотите выбирать метериал по алиасу, скорее всего придется подправить и роутер и компонент (для выборки данных по алиасу). В зависимости от требований есть еще вариант передавать идэшники POST-ом, но на мой взгляд это изврат.
интернет-блог: http://websiteprog.ru
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
http://joomlaforum.ru/index.php/topic,169326.msg1384971.html#msg1384971
Elle, спасибо, решение от Pavel M в его блоге подошло, вариант 1.
Минус всех предложенных решений в том, что при обновлении опять придется править роутер, а в шаблоне, как я правильно понял, это не переопределишь.
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Как и ожидалось, при обнове все слетит.
Кому интересно, поправленный /components/com_content/router.php для J3.2.3 во вложении
*

pragmatik

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Господа, а почему никто не рассматривает в качестве решения создание невидимого меню с пунктом под каждый материал и каждую категорию?
Ведь это:
  • позволит спокойно обновлять систему, не сбивая хаки
  • гарантированно избавит от дублей
по-моему для небольших сайтов это идеальное решение,
а вот насчет сайтов с несколькими тысячами страниц я не уверен,
не знает ли кто, сильно ли сказывается увеличение числа пунктов "невидимого" меню на нагрузку на сервер?
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
У меня уже под сотню материалов, и на каждый материал создавать еще и пункт меню - нелепо. Если J не в состоянии штатными цивильными (т.е. без всяких ухищрений со скрытыми меню, которые по сути тоже являются своеобразными хаками) средствами обеспечить требуемый функционал, то использование каких-либо хаков уже есть нормально, и лучше поправить 2 строчки в роутере, нежели перегружать базу объемом (есть хостинги, которые устанавливают ограничение на размер базы, ihc.ru например), а сервер нагрузкой (особенно на бесплатных тарифах, где нагрузка зарезана под минимум), каждый раз при этом теряя время на создание логически ненужного пункта меню.
*

ELLE

  • Глобальный модератор
  • 4510
  • 893 / 0
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
*

ELLE

  • Глобальный модератор
  • 4510
  • 893 / 0
Вот еще очень интересная тема по роутингу.
во, по-моему то что нужно
надо только сесть, да попробовать
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
во, по-моему то что нужно
надо только сесть, да попробовать
Уху, все никак руки у меня не доходят. Тоже интересен этот момент.
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Используем плагины для переопределения базовых классов
Роутинг в Joomla (JRoute)

м/б подтолкнет на красивый обход, в виде подмены всего роутера или нужного класса
Вот еще очень интересная тема по роутингу.
Ну, это уже для спецов, мне пока слабо
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Для интересующихся, во вложении роутер com_content для J3.2.4/3.3.0
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Скоро этим хакам придет конец
При условии, что новый роутер затронет интересы всех, что, имхо, малореально - уж больно много "хакеров" и иных недовольных текущим поведением, и каждый тянет в свою сторону.
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
При условии, что новый роутер затронет интересы всех, что, имхо, малореально - уж больно много "хакеров" и иных недовольных текущим поведением, и каждый тянет в свою сторону.
А как он может не затронуть всех? Изменения будут сделаны в ядре. Кастомизация на уровне плагинов.
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Плагин переопределения роутера.
Смотрел, пробовал. При очередном обновлении родной роутер изменяет поведение, исправляет/добавляет новые косяки, и снова его приходится править, чтобы подставить плагину. Лыко-мочало...

А как он может не затронуть всех? Изменения будут сделаны в ядре. Кастомизация на уровне плагинов.
Доживем, посмотрим :)
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
С J3.3.0 роутер com_content не обновлялся, и вот в 3.3.4 снова вылезли id в урлах...

Для страждущих: во вложении роутер com_content для J3.3.4.
Для новичков: содержимое файла распаковать в: /components/com_content/
*

jacson1985

  • Новичок
  • 8
  • 0 / 0
С J3.3.0 роутер com_content не обновлялся, и вот в 3.3.4 снова вылезли id в урлах...

Для страждущих: во вложении роутер com_content для J3.3.4.
Для новичков: содержимое файла распаковать в: /components/com_content/
Приветствую! Вставил этот роутер, id убрались, но теперь вместо 404-й вылазит "jos-Error: Материал не найден" и куча путей к разным файлам.
У меня Joomla 3.3.3, не подходит он для неё?
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Подходит и для 3.3.3, возможно, имеются иные правки? Или плагины? Судя по ошибке, у вас либо клубный шаблон на собственном фреймворке либо не com_content используется.
*

jacson1985

  • Новичок
  • 8
  • 0 / 0
Подходит и для 3.3.3, возможно, имеются иные правки? Или плагины? Судя по ошибке, у вас либо клубный шаблон на собственном фреймворке либо не com_content используется.
Шаблон артистер, com_content стандартный, другого ничего не использую. Правки только эти внёс. Можете взглянуть? Естественно отблагодарю *DRINK*, если заработает, ну очень меня эти id не устраивают :(
« Последнее редактирование: 03.02.2015, 17:17:05 от jacson1985 »
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Нет, не посмотрю, - артистки не в чести, фреймворк у него отсутствует, а значит не в шаблоне дело. Что-то вы там напортачили в самом роутере.
*

akondr

  • Захожу иногда
  • 112
  • 0 / 0
С J3.3.0 роутер com_content не обновлялся, и вот в 3.3.4 снова вылезли id в урлах...

Для страждущих: во вложении роутер com_content для J3.3.4.
Для новичков: содержимое файла распаковать в: /components/com_content/
работате на 3.3.6 исправно
Спасибо!!
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Обновленный роутер для J3.4.0.
В архиве во вложении 2 файла: router.php и config.xml.
Порядок установки:
1. Сделать бекап файла /administrator/components/com_content/config.xml
2. Сделать бекап файла /components/com_content/router.php
3. Извлечь из архива файл router.php и скопировать его с заменой в папку /components/com_content/
4. Извлечь из архива файл config.xml и скопировать его с заменой в папку /administrator/components/com_content/
5. В админке войти в общие настройки материалов и пересохранить их, убедившись, что параметр "Удалить ID материала из URL" имеет значение "Да".
6. Очистить кеш.
7. Наслаждаться.

upd 23.03.2015
Также подходит для J3.4.1
« Последнее редактирование: 23.03.2015, 07:41:27 от AlekVolsk »
*

pixod

  • Новичок
  • 1
  • 0 / 0
Добрый день. Такая проблема: материалы на сайте доступны по id в ссылках site.com/83 (83-id материала). Ссылки типа site.com/83, site.com/83fdsfsd, site.com/83-qwerty открывают один и тот же материал. Материал ни к какому меню не подключен и так просмотреть можно каждый материал. В чем проблема? искал не нашел. Версия 3.3.6. Заранее спасибо.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Убрать блок в мобильной версии сайта

Автор Grigorii

Ответов: 10
Просмотров: 619
Последний ответ 10.02.2024, 19:38:34
от darkghost
Вывод даты материала в списке тегов

Автор androv77

Ответов: 2
Просмотров: 876
Последний ответ 09.11.2023, 16:33:08
от denxio
Убрать из модуля новостей ссылку на статью, на которой выводится модуль

Автор zeus07

Ответов: 3
Просмотров: 708
Последний ответ 08.11.2023, 21:17:26
от GrayAn
Вывод дополнительного поля материала в модуле

Автор timofe

Ответов: 10
Просмотров: 1479
Последний ответ 06.10.2023, 14:02:24
от Mitriy
Как сделать отображение времени создания материала?

Автор Pzhigalov

Ответов: 0
Просмотров: 311
Последний ответ 27.09.2023, 22:45:29
от Pzhigalov