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

b2z

  • Support Team
  • 7470
  • 743
  • Разраблю понемногу
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #90 : 15.10.2013, 11:20:38 »
Если с двойным quote все ясно, то по поводу if ($count === 1 && !$advanced) я засомневался.

Pavel M в блоге привел два способа, причем кардинально отличающихся:
- первый способ if ($count === 1 && !$advanced) целиком убирает обработку одного сегмента для advanced режима;
- второй способ закомментировать строки:
Код: php
if (strpos($segments[0], ':') === false)
{
    $vars['view'] = 'article';
    $vars['id'] = (int) $segments[0];

    return $vars;
}
и он тоже работает.

Тут возникает вопрос, если комментирование более маленького куска кода из второго способа приводит к тому же результату, то правильно ли применять первый способ? К тому же в примечаниях к первому способу стоит:
Цитировать
все категории должны быть привязаны к пунктам меню - если этого не будет, то могут возникнуть ошибки при генерации ссылок.
Возможно при втором способе нет необходимости привязки все категорий к пунктам меню? Честно сказать, я в роутерах не очень силен, поэтому надо разобраться. А то меня пошлют с моим pull request ^-^
*

b2z

  • Support Team
  • 7470
  • 743
  • Разраблю понемногу
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #91 : 15.10.2013, 23:46:04 »
Вообщем потестил я и так и сяк, вроде способ с if ($count === 1 && !$advanced) нормально работает.

Сделал Pull Request + ссылка на трекер.
*

ZHart

  • Joostina
  • 335
  • 51
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #92 : 16.10.2013, 09:52:14 »
b2z, еще раз спасибо.
Надеюсь, эти изменения таки включат в релиз.
*

Pavel M

  • Осваиваюсь на форуме
  • 103
  • 8
  • Учиться никогда не поздно
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #93 : 16.10.2013, 11:19:11 »
Вообщем потестил я и так и сяк, вроде способ с if ($count === 1 && !$advanced) нормально работает.

Сделал Pull Request + ссылка на трекер.
Я использую эти методы на всех своих (и некоторых клиентских) сайтах уже почти год. Пока что ни разу не было замечено глюков.

Однако, замечу, что я использую не все возможности Joomla, поэтому возможно какие-то моменты могут работать некорректно. Тут поможет только тестирование.
*

b2z

  • Support Team
  • 7470
  • 743
  • Разраблю понемногу
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #94 : 16.10.2013, 11:41:29 »
Я использую эти методы на всех своих (и некоторых клиентских) сайтах уже почти год. Пока что ни разу не было замечено глюков.

Однако, замечу, что я использую не все возможности Joomla, поэтому возможно какие-то моменты могут работать некорректно. Тут поможет только тестирование.
Я вчера тестировал. Единственный минус такого advanced метода заключается в том, что все должно быть привязано к меню. Конечно, можно роутер переделать, но я в это не хочу лезть ^-^
*

Pavel M

  • Осваиваюсь на форуме
  • 103
  • 8
  • Учиться никогда не поздно
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #95 : 16.10.2013, 13:32:38 »
Я вчера тестировал. Единственный минус такого advanced метода заключается в том, что все должно быть привязано к меню. Конечно, можно роутер переделать, но я в это не хочу лезть ^-^
Да я и раньше все разделы старался привязывать к меню, тогда меньше дублей вылезает в выдачу. Правда желательно ещё и редиректы поставить http://joomlaforum.ru/index.php/topic,201567.0.html, тогда вообще нет дублей (если использовать для сайта стандартный com_content)
*

ZHart

  • Joostina
  • 335
  • 51
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #96 : 07.11.2013, 13:52:44 »
После обновления до Joomla 3.2 всю процедуру пришлось повторить заново.
То есть в 3.2 никаких изменений в ядро произведено не было к сожалению.

P.S.: Еще бы решить тот же вопрос для тегов в Joomla 3.x — было бы вообще шикарно.
*

b2z

  • Support Team
  • 7470
  • 743
  • Разраблю понемногу
*

Dazed79

  • Новичок
  • 1
  • 0
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #98 : 21.11.2013, 08:20:32 »
После удаления ID вышеописанным способом при добавлении в URL формата сайт.ру/категория/подкатегория/статья.html любых символов

сайт.ру/категория/до подкатегории/подкатегория/статья.html
сайт.ру/категория/вместо подкатегории/статья.html
сайт.ру/категория/подкатегория/после подкатегории/статья.html

а также при переходе на страницы из удаленной подкатегории (старые внешние ссылки) стала появляться страница (раньше открывался дубль или 404):
Спойлер
[свернуть]

На категорию и подкатегорию есть пункты меню. Возврат к исходникам, чистка coocies, кеша ничего не дали
Может кто-нибудь помочь устранить эту проблему или подсказать способ как закрыть ее 404й?   !

P.S. после удаления id дубли убрал при помощи плагина Shnodoubles
« Последнее редактирование: 21.11.2013, 08:59:52 от Dazed79 »
*

motosimak

  • Осваиваюсь на форуме
  • 54
  • 1
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #99 : 23.12.2013, 18:45:29 »
2 вопроса:
1- как убрать id под категории? Т.е в меню привязана категория и в ней есть подкатегории.
2- когда избавление от id будет из коробки? На других cms  видел, что ссылки изначально без id, если же ссылка одинаковая с уже существующей, показывает id, т.е обратная ситуация.
*

peterk

  • Захожу иногда
  • 11
  • 0
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #100 : 09.01.2014, 07:00:19 »
Подскажите как избавиться от цифр в URL
Имеем материал и пункт меню которое на него ссылается и как следствие получаем следующую ссылку
http://сайт.ru/2013-02-05-15-28-57/o-kompanii
« Последнее редактирование: 09.01.2014, 10:09:08 от peterk »
*

kreator

  • Новичок
  • 5
  • 1
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #101 : 01.02.2014, 14:08:34 »
У меня немного обратный вопрос: как убрать все, кроме ID материала в ссылке, чтоб:

http://sait.ru/katalog/6545-тут-длинный-хвост-от-названия-материала.html

стало:

http://sait.ru/katalog/6545.html

?
*

Pavel M

  • Осваиваюсь на форуме
  • 103
  • 8
  • Учиться никогда не поздно
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #102 : 02.02.2014, 13:48:38 »
У меня немного обратный вопрос: как убрать все, кроме ID материала в ссылке, чтоб:

http://sait.ru/katalog/6545-тут-длинный-хвост-от-названия-материала.html

стало:

http://sait.ru/katalog/6545.html

?

Решения через ХАК я не знаю, так как не сталкивался с этим. Но можно сделать вот таким образом:

1. Сначала убираете ID статей через вышеуказанные способы.
2. Потом просто вместо алиасов материалов вручную задаете нужные цифры в настройках каждого материала.
*

garmoni

  • Осваиваюсь на форуме
  • 38
  • 0
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #103 : 25.03.2014, 15:32:19 »
После проделанной процедуры указанной выше (убрать ID), все работает, только те материалы, которые выводятся через ссылку в статье стали выводится с текстом главной страницы вначале. Проверила модуль, который выводит текст на главную. Галочка стоит только в пункте Главная. Возвращаю все как было, материал открывается нормально.
*

mspb

  • Новичок
  • 3
  • 0
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #104 : 12.04.2014, 12:57:23 »
А как сделать, чтобы это всё не слетало при обновлении?
*

ZHart

  • Joostina
  • 335
  • 51
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #105 : 12.04.2014, 16:28:34 »
А как сделать, чтобы это всё не слетало при обновлении?

Долбить разработчиков, чтобы они включили эти изменения в релиз. Для этого есть все основания, ведь хуже не будет (тем более, что как минимум одно из изменений — это исправление явного бага). К сожалению, пока они с этим делом тормозят.
*

indorill

  • Осваиваюсь на форуме
  • 111
  • 0
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #106 : 27.05.2014, 15:44:41 »
Здравствуйте, на версии 2.5 кое как получилось сделать что бы ссылка выглядела примерно как мне нужно) Но теперь проблема в том что при использовании плагина Контент - Навигация по страницам - линкует на страницы под неправильным адресом - вместо нужного /cases/83-portfolio -> /cases/80-cases/83-portfolio7 Подскажите пожалуйста, что и где поправить что бы ссылки работали так же как в вашем описании?
*

Webb

  • Давно я тут
  • 304
  • 17
  • rusinmd
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #107 : 09.06.2014, 21:27:40 »
Не фунциклирует Joomla! 3.2.3.
*

Dekameron

  • Осваиваюсь на форуме
  • 105
  • 1
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #108 : 05.07.2014, 13:26:51 »
Внес правки в config.xml и 2 правки в роутере (0 на 1), и + попрпавил 3-ю строку.
Но в менеджере материалов Joomla 3.3 не нашел опции "Отключить ID".
Где её искать? На каких вкладках?
*

lap-a-toon

  • Новичок
  • 3
  • 0
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #109 : 09.07.2014, 15:09:40 »
Прошу прощения, если где-то это уже решено, но не нашел.
Интересует такой момент, когда ввожу в адресной строке что-то вроде http://САЙТ/catalog/stranica
где catalog и stranica это произвольные наборы символов, не обязательно соответствующим папкам и алиасам, но присутствуют оба
спотыкается в router.php на этой строке
      
Код
// We get the category id from the menu item and search from there
$id = $item->query['id'];
выдает такую ошибку:
Notice: Undefined index: id in .../components/com_content/router.php on line 386

Пробовал оба описанных способа, в обоих случаях результат одинаков
*

Yoric

  • Захожу иногда
  • 13
  • 1
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #110 : 26.11.2014, 14:37:49 »
Версия Joomla 3.3.6 Поменял 0 на 1 iD исчез, но если добавляешь новую статью - получаешь 404 на все статьи кроме первой

Есть какие то варианты еще?
« Последнее редактирование: 26.11.2014, 15:46:57 от Yoric »
*

Yoric

  • Захожу иногда
  • 13
  • 1
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #111 : 26.11.2014, 21:14:53 »
Нашел как id отключить -
Joomla 3.3.6

1
Открываем в блокноте файл ваш_сайт/administrator/components/com_content/config.xml
Сразу же после строки description="COM_CONTENT_CONFIG_ARTICLE_SETTINGS_DESC">
вставляем следующий код:
<field name="sef_advanced_link" type="radio" default="1" label="SefAdvancedMode" description="Remove Item ID from Content URL?">
   <option value="0">JNO</option>
   <option value="1">JYES</option>
</field>

2.
Сохраняем файл. Переходим в панель управления сайта, выбираем в верхнем меню Материалы/Менеджер материалов. Нажимаем кнопку Настройки в верхней части страницы.
Появится всплывающее окно с настройками. Переходим во вкладку Материалы и видим пункт SefAdvancedMode с двумя радио переключателями Нет и Да. Проверяем, что бы отмечен был переключатель Да (он должен быть отмечен по умолчанию), при необходимости активируем нужный пункт. Сохраняемся и закрываем окно

3.  открываем в блокноте файл ваш_сайт/components/com_content/router.php, находим строку if ($count == 1) { (у меня это 226 строка) и изменяем ее на строку вида if ($count == 1 && !$advanced)

4.
в файле components/com_content/router.php
на примерно 377 строке:
код
->where($db->quoteName('alias' ). ' = ' . $db->quote($db- >quote($segment)));
надо заменить на
->where($db->quoteName('alias' ). ' = ' . $db->quote($segment) );

Все заработало!
*

Yoric

  • Захожу иногда
  • 13
  • 1
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #112 : 26.11.2014, 21:18:20 »
И если потом ID подставляешь - то страницы нет - 404
У меня шаблон от ЮТЕМ (на всякий случай пишу)
*

sandra_ap

  • Новичок
  • 1
  • 0
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #113 : 11.12.2014, 15:46:59 »
Помогите, пожалуйста, как все назад вернуть? И 404-я ошибка и дубли... 1. Файл router.php первоначальный загрузить, 2. в Настройках "Удалить ID?" - выбрать "Нет", 3. очистить кеш. Но ничего не возвращается. Что еще? Спасибо!!
*

Mega-e

  • Осваиваюсь на форуме
  • 33
  • 2
Судьба равнодушных - РАБСТВО!
*

virusnjk

  • Захожу иногда
  • 18
  • 0
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #115 : 08.09.2015, 17:05:16 »
Всё работает по этим вариантам, только не работает тогда когда у материала алиас к примеру вот такой "video" а если сделать алиас "video-1" то ошибки 404 нет.

версия 3.4.3

Почему? Как исправить что бы было без дефиса?

забыл заменить строчку в router.php
Цитировать
if ($count == 1) {
на
Цитировать
if ($count == 1 && !$advanced) {

и всё заработало

редактирую далее пока никто не ответил, не работает в тех категориях где выставлен пункт меню как материал, а в этом материале есть ссылки на другие материалы той же категории что и первый материал
« Последнее редактирование: 08.09.2015, 17:22:57 от virusnjk »
*

woodjum

  • Захожу иногда
  • 10
  • 0
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #116 : 18.09.2015, 17:04:45 »
Ошибка COM_CONTENT_ERROR_PARENT_CATEGORY_NOT_FOUND

Ссылка /uslugi-i-tseny/uslugi-i-tseny-v-moskve
Пункт меню /uslugi-i-tseny работает и ссылается на материал который открывается нормально.

Использую только плагин JCE
Помогите что надо исправить что бы все заработало, всю голову уже сломал.
*

Lordon

  • Захожу иногда
  • 16
  • 0
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #117 : 08.10.2015, 21:23:38 »
та же беда, у меня при создании меню, материалов категории в адресной строке цифры
у меня Joomla 3.4
были вот такие ссылки
http://obivshik.ru/sdelaj-sam/120-remont-i-restavratsiya-stula-svoimi-rukami.html
помогло решение №2 http://joofaq.ru/sozdanie-sayta-na-joomla-1-5/nastroyka-rasshireniy/kak-ubrat-id-materiala-iz-ssylok-v-joomla-2-5-i-joomla-3
правда у меня почему то ссылка не открывается, если у кого так, удалите с конца /kak-ubrat-id-materiala-iz-ssylok-v-joomla-2-5-i-joomla-3 и откроется
получилось вот так http://obivshik.ru/sdelaj-sam/remont-i-restavratsiya-stula-svoimi-rukami.html
искал по форуму нашел
« Последнее редактирование: 08.10.2015, 22:25:19 от Lordon »
*

Lordon

  • Захожу иногда
  • 16
  • 0
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #118 : 08.10.2015, 22:26:29 »
Ребята, уже вроде было найдено решение. Я писал об этом в блоге.

Если вкратце, то для отображения ссылки из одного слова нужно кусок:

Код
// then we assume it is a category. If they don't we assume it is an article
if ($count === 1) {

Заменить на:

Код
// then we assume it is a category. If they don't we assume it is an article
if ($count === 1 && !$advanced) {

Проверял на Joomla 3.1
помогло)))
вариант второй
*

Lordon

  • Захожу иногда
  • 16
  • 0
Re: [FAQ] Как убрать ID из ссылок?
« Ответ #119 : 12.10.2015, 23:02:25 »
после того как убрал ссылки ID в router.php все заработало, но, появилось в одном материале вот такая ошибка router.php on line 320
кто знает что там ковырнуть ?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Умный поиск, как убрать "текст для поиска"?

Автор planetaryi

Ответов: 7
Просмотров: 1705
Последний ответ 15.07.2017, 12:45:36
от vipiusss
как убрать ?limitstart=0

Автор nbserg

Ответов: 29
Просмотров: 8885
Последний ответ 20.06.2017, 16:58:30
от orsy
[FAQ] Как убрать <meta name="generator" content="Joomla! 2.5 - Open Source Content Management" />

Автор neket

Ответов: 50
Просмотров: 93365
Последний ответ 22.05.2017, 17:44:49
от SeBun
Убрать заголовок материала

Автор swansea

Ответов: 16
Просмотров: 8556
Последний ответ 19.05.2017, 13:05:21
от darkghost
Как убрать обязательное подтверждение об ознакомлении с Условиями обслуживания?

Автор aaales

Ответов: 10
Просмотров: 3556
Последний ответ 22.03.2017, 15:05:54
от vipex