Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
Ключевое слово

ТЕМА: Как убрать идентификатор статей (ID) из ссылок в браузере для Joomla 1.6 - 1.7

Как убрать идентификатор статей (ID) из ссылок в браузере для Joomla 1.6 - 1.7 4 года 6 мес. назад #322

  • avtomastersu
  • avtomastersu аватар
  • Вне сайта
  • Главный я тут
  • Кручу,верчу капчу хочу...
  • Сообщений: 204
  • Спасибо получено: 33
  • Репутация: 12
После установки новой Joomla 1.7 возник вопрос - почему в строке браузера ссылки были с цифрами ? И можно ли их убрать, понятно стало, что это отображался идентификатор статей.
Выяснилось что есть специальный параметр, который отвечает за публикацию идентификатора статей в ссылках. Его можно либо прописать вручную в базе данных, либо добавить управление данным параметром в админпанели.Прописывать в базу данных сложновато, поэтому опустим этот момент, а вот добавить управление данным параметром в админпанель можно так. Открываем для редактирования файл :
корень_вашего_сайта\administrator\components\com_content\config.xml
и добавляем еще один параметр вверху сразу после строки
description="COM_CONTENT_CONFIG_ARTICLE_SETTINGS_DESC">
Параметр такой :
<field 
           name="sef_advanced_link"
           type="radio"
           default="0"
           label="Sef Advanced Mode"
           description="Remove ItemID from Content URL?">
           <option  value="0">JNO</option>
           <option  value="1">JYES</option>
        </field>
Затем сохраняем изменения
Сохраните изменения.
И дальше вы можете легко управлять данным параметров в админпанели. Для этого зайдите в Менеджер Материалов, нажмите на кнопку Настройки в правом верхнем углу, и перед вами откроется вот такое диалоговое окно, в котором мы можем увидеть новый параметр Sef Advanced Mode.
Что можно и увидеть на картинке


Если установить значение данного параметра в положение "Да", то в наших ссылках на статьи будет отсутствовать цифры идентификатора статей.

Если у кого-то вдруг будет выдавать ошибку после добавления данного параметра, то нужно в файле:

корень_сайта/components/com_content/router.php

заменить код:
// 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) {
И пусть эти цифры вас больше не раздражают :)
Последнее редактирование: 4 года 6 мес. назад от avtomastersu.
Администратор запретил публиковать записи гостям.

Как убрать идентификатор статей (ID) из ссылок в браузере для Joomla 1.6 - 1.7 3 года 5 мес. назад #551

  • avtomastersu
  • avtomastersu аватар
  • Вне сайта
  • Главный я тут
  • Кручу,верчу капчу хочу...
  • Сообщений: 204
  • Спасибо получено: 33
  • Репутация: 12
Со следующей версией Джумла 2.5, аналогичная история. В тот же файл добавляется код
<field name="sef_advanced_link"
type="radio"
default="1"
label="SEF: Remove article ID from URL"
description="Remove ArticleID from URL?">
<option value="0">JNO</option>
<option value="1">JYES</option>
</field>
После чего в настройках появится чек-бокс, как видно в предыдущем посте, где можно отметить да или нет ID в ссылках браузера.

И при появлении ошибок 404, в аналогичном файле роутера заменить
// 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) {
Администратор запретил публиковать записи гостям.