Новости Joomla

Вышли релизы Joomla 6.1 и Joomla 5.4.5: новые возможности и стабильность

Релиз Joomla 6.1.0

Проект Joomla! объявил о доступности Joomla 6.1 [Nyota] — новой минорной версии шестой серии, а также о выпуске релиза исправлений ошибок Joomla 5.4.5. Релиз 6.1 приносит ряд долгожданных функций, повышающих удобство управления контентом и защиту от спама.

👩‍💻 Компонент "CS Афиши" для Joomla.

👩‍💻 Компонент "CS Афиши" для Joomla.

Расширение "CS Афиши" позволяет выводить список мероприятий, фильтровать их по датам, поиск по заголовкам и описанию.

В состав пакета расширений входят:
- Компонент "CS Афиши"
- Модуль "Календарь событий"
- Модуль "Предстоящие события"
- Библиотека "ImgResize"

Расширение "CS Афиши" позволяет выводить список мероприятий, фильтровать их по датам, поиск по заголовкам и описанию.

Модуль "Календарь событий" отображает предстоящие и прошедшие мероприятие на календаре, с отображением мероприятий на конкретную дату во всплывающем окне.

Модуль "Предстоящие события" показывает список предстоящий событий по порядку их наступления.

P.S. Расширение платное, но плата символическая, чисто для отработки приема платежей. Ключи без ограничения по времени, купившие сейчас - смогут обновляться без ограничений.

Разработчик - участник нашего сообщества Дмитрий Денисов (@codersite).

Страница расширения
Демо

Яндекс выпустил инструмент Видимость сайта в Алисе AI.

Яндекс выпустил инструмент Видимость сайта в Алисе AI.

С тех пор, как в поисковиках появились нейроответы ИИ, трафик на сайты стал гораздо меньше, так как пользователь стал получать информацию непосредственно на странице поисковика без перехода на сайт. Но при генерации ответа ИИ указывает источники - ссылки на сайты, информация которых была использована для генерации ответа.

Долгое время у всех был немой вопрос: "Как же теперь оценивать эффективность сайта?". Теперь этот на этот вопрос отчасти отвечает новый инструмент аналитики.
Процитируем справку Яндекса по инструменту:
На запросы пользователей в Поиске может отвечать Алиса AI. Ответы появляются в поисковой выдаче, в объектных ответах и на отдельной вкладке Поиска. В них чаще всего упоминаются страницы сайтов, на которые Алиса AI опиралась при подготовке ответа.

С помощью инструмента Видимость сайта в Алисе AI в Яндекс Вебмастере вы можете:
- узнать долю упоминаний сайта среди источников в ответах Алисы AI в Поиске и отследить динамику изменений;
- посмотреть примеры запросов, по которым страницы сайта показываются в ответах Алисы AI;
- посмотреть примеры сайтов той же тематики, которые часто упоминаются в генеративной выдаче.
Данные отображаются за последние 3 месяца и обновляются каждую неделю.

Статистика собирается только по тем запросам, по которым ваш сайт уже находится достаточно высоко в поисковой выдаче. Это позволяет анализировать видимость именно в той нише, где вы заинтересованы в продвижении, и избегать «размытия» по малозначимым для вас запросам.

Кроме того, такой подход обусловлен работой Алисы AI: она строит ответ с опорой на самые релевантные, информативные и качественные страницы, которые обычно занимают высокие позиции в Поиске.

Чтобы увидеть статистику вашего сайта в меню Яндекс.Вебмастера перейдите в раздел "Эффективность" и далее в "Показы сайта в Алисе AI".

В начале февраля 2026г. был вебинар с Михаилом Сливинским - амбассадором Поиска Яндекса, и в рамках вебинара была озвучена просьба сделать такой инструмент. Скорее всего разработка на тот момент уже велась, потому что от просьбы до релиза прошло около 2-х месяцев. В любом случае хорошо, что такая статистика появилась.

Показы сайта в Алисе AI в вашем Яндекс,Вебмастере.

@joomlafeed

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

NortonFox

  • Захожу иногда
  • 441
  • 43 / 0
Спасибо это не то слово ! Хоть для какого то компонента роутер сейчас есть нормальный ! И все таки очень хотелось бы подробное описание, как был получен этот результат.
Я знаю только то, что ничего не знаю
*

Yurii86

  • Новичок
  • 4
  • 0 / 0
найти файл  components/com_k2/router.php
Скопировать в него вот этот текст, удалив то, что там было (нету времени выбирать то, что там было изменено)

Код
<?php
/**
 * @version                $Id: router.php 1492 2012-02-22 17:40:09Z joomlaworks@gmail.com $
 * @package                K2
 * @author                JoomlaWorks http://www.joomlaworks.net
 * @copyright        Copyright (c) 2006 - 2012 JoomlaWorks Ltd. All rights reserved.
 * @license                GNU/GPL license: http://www.gnu.org/copyleft/gpl.html
 */

// no direct access
defined('_JEXEC') or die('Restricted access');
//SELECT alias FROM `j25_k2_items` WHERE id = "1" LIMIT 1
//SELECT id FROM `j25_k2_items` WHERE alias = "test" LIMIT 1
function K2BuildRoute( & $query) {

    $segments = array ();

    $menu = & JSite::getMenu();
    if ( empty($query['Itemid'])) {
        $menuItem = & $menu->getActive();
    }
    else {
        $menuItem = & $menu->getItem($query['Itemid']);
    }
    $mView = ( empty($menuItem->query['view']))?null:$menuItem->query['view'];
    $mTask = ( empty($menuItem->query['task']))?null:$menuItem->query['task'];
    $mId = ( empty($menuItem->query['id']))?null:$menuItem->query['id'];
    $mTag = ( empty($menuItem->query['tag']))?null:$menuItem->query['tag'];

    if ( isset ($query['layout'])) {
        unset ($query['layout']);
    }

    if ( $mView == @$query['view'] && $mTask == @$query['task'] && $mId == @intval($query['id']) &&  @intval($query['id']) > 0 ) {
        unset ($query['view']);
        unset ($query['task']);
        unset ($query['id']);
    }

    if ( $mView == @$query['view'] && $mTask == @$query['task'] && $mTag == @$query['tag'] && isset($query['tag']) ) {
        unset ($query['view']);
        unset ($query['task']);
        unset ($query['tag']);
    }

    if ( isset ($query['view'])) {
        $view = $query['view'];
        $segments[] = $view;
        unset ($query['view']);
    }

    if (@ isset ($query['task'])) {
        $task = $query['task'];
        $segments[] = $task;
        unset ($query['task']);
    }

    if ( isset ($query['id'])) {
        $id = $query['id'];
        $segments[] = $id;
        unset ($query['id']);
    }

    if ( isset ($query['cid'])) {
        $cid = $query['cid'];
        $segments[] = $cid;
        unset ($query['cid']);
    }

    if ( isset ($query['tag'])) {
        $tag = $query['tag'];
        $segments[] = $tag;
        unset ($query['tag']);
    }

    if ( isset ($query['year'])) {
        $year = $query['year'];
        $segments[] = $year;
        unset ($query['year']);
    }

    if ( isset ($query['month'])) {
        $month = $query['month'];
        $segments[] = $month;
        unset ($query['month']);
    }

    if ( isset ($query['day'])) {
        $day = $query['day'];
        $segments[] = $day;
        unset ($query['day']);
    }

    if ( isset ($query['task'])) {
        $task = $query['task'];
        $segments[] = $task;
        unset ($query['task']);
    }

        // Изменения.
        if(isset($segments[0]))
        {
                if($segments[0]=='item')
                {
                        $alias = explode(':',$segments[1]);
                        $segments[0]=$alias[1];
                        $segments[1]=null;
                }
        }
        // Изменения. Конец.

    return $segments;
}

function K2ParseRoute($segments) {
    $vars = array ();

        // Изменения.
        $id = false;
        if(count($segments)==1)
        {
                $alias = $segments[0];
                $alias = str_replace ( ':' , '-' , $alias);
                $db = &JFactory::getDBO();
                $query = 'SELECT id FROM `#__k2_items` WHERE alias = "'.$alias.'" LIMIT 1';
                $db->setQuery($query);
                $id = $db->loadResult();
        }

        if($id)
        {
                $vars['view'] = 'item';
                $vars['task'] = $id.':'.$alias;
                $vars['id'] = $vars['task'];
        }else{
        // Изменения. Конец.

    $vars['view'] = $segments[0];
    if (!isset($segments[1]))
        $segments[1]='';
    $vars['task'] = $segments[1];

    if ($segments[0] == 'itemlist') {

        switch($segments[1]) {

            case 'category':
                $vars['id'] = $segments[2];
                break;

            case 'tag':
                if (isset($segments[2]))
                    $vars['tag'] = $segments[2];
                break;

            case 'user':
                if (isset($segments[2]))
                    $vars['id'] = $segments[2];
                break;

            case 'date':
                if (isset($segments[2]))
                    $vars['year'] = $segments[2];
                if (isset($segments[3]))
                    $vars['month'] = $segments[3];
                if (isset($segments[4])) {
                    $vars['day'] = $segments[4];
                }
                break;

        }

    }

    else if ($segments[0] == 'item') {

        switch($segments[1]) {

            case 'edit':
                if (isset($segments[2]))
                    $vars['cid'] = $segments[2];
                break;

            case 'download':
                if (isset($segments[2]))
                    $vars['id'] = $segments[2];
                break;

            default:
                $vars['id'] = $segments[1];
                break;

        }

    }

        if($segments[0] == 'comments' && isset($segments[1]) && $segments[1] == 'reportSpammer') {
                $vars['id'] = $segments[2];
        }

        // Изменения.
        }
        // Изменения. Конец.

    return $vars;
}


В таком случае нельзя редактировать материал с фронта. Подскажите как исправить. 
*

terr

  • Давно я тут
  • 824
  • 14 / 6
  • Ученик html-я
Ага такая же фигня не добавляется с фронта открывается список категории
*

NortonFox

  • Захожу иногда
  • 441
  • 43 / 0
У меня 404 вылазит вместо добавления материала. Актуальная тема, скоро сайт сдавать, хотелось бы нормальный урл.
Я знаю только то, что ничего не знаю
*

karabert

  • Захожу иногда
  • 276
  • 30 / 3
Скиньте ссылки которые глючат без чпу и с чпу.
*

Очередной вебмастер

  • Давно я тут
  • 768
  • 55 / 0
  • лысый умный дядя
У меня 404 вылазит вместо добавления материала. Актуальная тема, скоро сайт сдавать, хотелось бы нормальный урл.
Если сайт сдавать заказчику, то вам вообще бы не стоило с роутером играться....
Сайты на Joomla, разработка и поддержка
----------
Помог ответ - жми плюс!
*

NortonFox

  • Захожу иногда
  • 441
  • 43 / 0
Если сайт сдавать заказчику, то вам вообще бы не стоило с роутером играться....
Не могу я так, мне его двигать еще после сдачи ))
Я знаю только то, что ничего не знаю
*

NortonFox

  • Захожу иногда
  • 441
  • 43 / 0
Скиньте ссылки которые глючат без чпу и с чпу.
Даже не знаю, что скидывать, суть такая. Логинимся, открываем любую страницу сайт, жмем на слово "Редактировать материал" которое идет перед заголовком, посе чего всплывает окно с редактором, но вот в данном случае там всплывает 404 а не редактор, соответственно ссылки нету, так как некуда не переходим.
Я знаю только то, что ничего не знаю
*

moolkin

  • Захожу иногда
  • 65
  • 15 / 0
Даже не знаю, что скидывать, суть такая. Логинимся, открываем любую страницу сайт, жмем на слово "Редактировать материал" которое идет перед заголовком, посе чего всплывает окно с редактором, но вот в данном случае там всплывает 404 а не редактор, соответственно ссылки нету, так как некуда не переходим.
вообще это по большей части функционал админа - а админить лучше из админки...?
делаю и помогаю делать сайты на джумле.
кому интересно - стучитесь в мой профиль на фри-лансе
https://www.free-lance.ru/users/Moolkin/
или в аську/скайп
*

NortonFox

  • Захожу иногда
  • 441
  • 43 / 0
Сайт разноплановый, его будут наполнять (по большей части менять материал типа акции, скидки, предложения и тд) менеджеры, и вот их в админку я не хочу допускать, даже с настройкой всех прав.
Я знаю только то, что ничего не знаю
*

Yurii86

  • Новичок
  • 4
  • 0 / 0
ссылка кнопки редактирования с фронта имеет такой вид

<a class="modal" rel="{handler:'iframe',size:{x:990,y:550}}" href="<?php echo $this->item->editLink; ?>">

может поможет в решении устранения проблемы.
*

terr

  • Давно я тут
  • 824
  • 14 / 6
  • Ученик html-я
я не менял код так как добовление с фронта ключевой момент сайта так что ошибку неывидно
*

BHy4eK

  • Захожу иногда
  • 110
  • 1 / 0
До изменения router.php ссылка была следующего вида:

site/категория/item/1-материал

после того как использовал код представленный тут для того чтобы убрать item и номер материала ссылка стала следующего вида, тоесть item и номер убрался но в конце ссылки прилип какой то слэш.

site/категория/материал/

Подскажите как убрать слеш в конце ссылки, что нужно поменять в этом файле router.php чтобы исчез слэш ?
*

BHy4eK

  • Захожу иногда
  • 110
  • 1 / 0
Подскажите пожалуйста очень надо !
*

kim095

  • Новичок
  • 3
  • 0 / 0
Добрый день!
Недавно возникла необходимость изменить адрес "site.com/category/item/1-material" на "site.com/category/material.html" для определенной категории.
Вижу, что тут тема активно обсуждается, поэтому решил сделать доброе дело и бросить свой вариант кода, может кому и пригодится :)
Решил следующим образом:
Спойлер
[свернуть]
Измененный код естественно в файле ../components/com_k2/router.php
Все протестировано, работает как часы :)

P.S. естественно алиасы для материалов должны быть уникальными

Работает отлично, но только для категории 1. Пробовал убирать " == 1", но тогда ссылки на материалы остальных категорий выдают 404.
Очень жду доработки. Спасибо.
*

blizzard23

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
В таком случае нельзя редактировать материал с фронта. Подскажите как исправить. 
Кто-нибудь нашел решение?
*

eep

  • Новичок
  • 2
  • 0 / 0
Работает отлично, но только для категории 1. Пробовал убирать " == 1", но тогда ссылки на материалы остальных категорий выдают 404.
Очень жду доработки. Спасибо.
Добрый день!
Извините, что так долго, был в скажем так, в отпуске, отдыхать тоже надо :)
А Вы убрав "== 1", точно заменили запрос в БД ?
Т.е. должно быть так:
Спойлер
[свернуть]
*

zhivulin-al

  • Новичок
  • 3
  • 1 / 0
Спасибо за исправление роутера. Протестировал (ЧПУ родное). Выявленные проблемы:
1) Вложения в материалах перестали скачиваться, т.к. ссылка на них стала вести в никуда. До обновления: .../partneram/prezentatsii/item/download/12_b91d34551c7eb434f47d860f49eaeb26. После обновления: .../partneram/12_b91d34551c7eb434f47d860f49eaeb26. Необходимо добавить исключение или редирект на правильную ссылку.
2) Автор топика пишет, что проблема с появлением в ссылке на материал /item/ и id начинается с 3 уровня вложенности. На самом деле со 2-го. Обновление это исправляет. Но не исправляет ссылку на категорию. Если есть 4-й и более уровень вложенности, то начиная с 3-го в ссылке на категорию появляются .../itemlist/category/ID-. Как временное решение пока дублирую в основном меню пункты со ссылками на уровни категорий и прописанными псевдонимами (копирующими псевдонимы соответствующих категорий). Но это неудобно.
Мысли по поводу id в ссылке материала/категории. В случае его присутствия корректировка псевдонима не влияет на доступность ссылки. Т.е. при необходимости можем вносить корректировки при оптимизации и при этом не вылетим из поиска т.к. материал/категория остаются доступными. При новом роутере изменение даже одного символа в псевдониме ведет посетителя по старой ссылке на 404 страницу. Какие будут мысли от уважаемого общества? Переходить на sh404SEF и подобные не рассматриваем.

Здравствуйте, к сожалению в ПХП не силен (все делаю методом "ТЫКА"))
Но, чувствую ответ стоит искать в файле по адресу components/com_k2/templates/default/item.php
Там присутствует код:
Код
<!-- Item attachments -->
  <div class="itemAttachmentsBlock">
  <span><?php echo JText::_('K2_DOWNLOAD_ATTACHMENTS'); ?></span>
  <ul class="itemAttachments">
    <?php foreach ($this->item->attachments as $attachment): ?>
    <li>
    <a title="<?php echo K2HelperUtilities::cleanHtml($attachment->titleAttribute); ?>" href="<?php echo $attachment->link; ?>"><?php echo $attachment->title; ?></a>
    <?php if($this->item->params->get('itemAttachmentsCounter')): ?>
    <span>(<?php echo $attachment->hits; ?> <?php echo ($attachment->hits==1)? JText::_('K2_DOWNLOAD') : JText::_('K2_DOWNLOADS'); ?>)</span>
    <?php endif; ?>
    </li>
    <?php endforeach; ?>
  </ul>
  </div>
  <?php endif; ?>

<div class="clr"></div>
  </div>
  <?php endif; ?>

Кажется тут что то надо поменять, вот вид самой ссылки на атач
Код
<a title="<?php echo K2HelperUtilities::cleanHtml($attachment->titleAttribute); ?>" href="<?php echo $attachment->link; ?>"><?php echo $attachment->title; ?></a>
« Последнее редактирование: 19.08.2012, 23:46:42 от zhivulin-al »
*

Makc

  • Захожу иногда
  • 55
  • 11 / 0
Ага такая же фигня не добавляется с фронта открывается список категории
+1 не работает редактирование и добавление с фронта

Нашел решение, возможно кто-то знает как красивее исполнить:

Добавление материала с фронта
В файл /modules/mod_k2_user/userblock.php добавить
Код
<?php $user->profile->addLink = '/item/add?tmpl=component' ?>

Редактирование с фронта
В файлы
/components/com_k2/templates/default/item.php
/components/com_k2/templates/default/category_item.php
Код
<?php $this->item->editLink = "/item/edit/".$this->item->id."?tmpl=component"; ?>
« Последнее редактирование: 04.09.2012, 15:15:52 от Makc »
Всё, что пишу, проверено или работатет на J 1.7 + К 2.5.4
*

cosmofox

  • Новичок
  • 3
  • 0 / 0
Эх, всё бы замечательно, да не работает с субкатегориями...
На примере моего сайта ресторана:
Ссылка при просмотре основной категории с субкатегориями
Код
site/menu
При просмотре субкатегории с итемами
Код
site/menu/itemlist/category/28-bezalkogolnyie-kokteyli
И соответственно самого итема
Код
site/menu/item/324-molochnyiy-kokteyl

Помогите люди добрые) Если кто поможет - за мной не заржавеет  *DRINK*
*

moolkin

  • Захожу иногда
  • 65
  • 15 / 0
Эх, всё бы замечательно, да не работает с субкатегориями...
На примере моего сайта ресторана:
Ссылка при просмотре основной категории с субкатегориями
Код
site/menu
При просмотре субкатегории с итемами
Код
site/menu/itemlist/category/28-bezalkogolnyie-kokteyli
И соответственно самого итема
Код
site/menu/item/324-molochnyiy-kokteyl

Помогите люди добрые) Если кто поможет - за мной не заржавеет  *DRINK*

единственный вариант, как это победить - создать пункты меню, которые соответствуют иерархии ваших категорий в К2, тогда всё будет работать.

При просмотре субкатегории с итемами
делаю и помогаю делать сайты на джумле.
кому интересно - стучитесь в мой профиль на фри-лансе
https://www.free-lance.ru/users/Moolkin/
или в аську/скайп
*

cosmofox

  • Новичок
  • 3
  • 0 / 0
единственный вариант, как это победить - создать пункты меню, которые соответствуют иерархии ваших категорий в К2, тогда всё будет работать.

При просмотре субкатегории с итемами

Нет, это не вариант, хотя бы потому что в меню только 1 пункт - меню ресторана. Вся остальная навигация по меню уже идет без участия меню) Поэтому ИМХО надо переделывать router.php, ведь с тем вариантом который выложен тут - всё почти получается, просто нет в ссылке субкатегории, а главная категория и имя итема без проблем отображается
*

moolkin

  • Захожу иногда
  • 65
  • 15 / 0
Нет, это не вариант, хотя бы потому что в меню только 1 пункт - меню ресторана. Вся остальная навигация по меню уже идет без участия меню) Поэтому ИМХО надо переделывать router.php, ведь с тем вариантом который выложен тут - всё почти получается, просто нет в ссылке субкатегории, а главная категория и имя итема без проблем отображается

я не говорю что для навигации надо использовать созданное меню, его можно вообще нигде не сайте не показывать, главное чтобы категории имели такие же пункты меню и всё.
как переделать роутер так чтобы там всё как надо работало - никто не знает. (я думаю и разработчики бы уже давным давно сделали если бы знали как)
делаю и помогаю делать сайты на джумле.
кому интересно - стучитесь в мой профиль на фри-лансе
https://www.free-lance.ru/users/Moolkin/
или в аську/скайп
*

Makc

  • Захожу иногда
  • 55
  • 11 / 0
Как убрать из url только item, а id материала оставить? Помогите, пожалуйста
Всё, что пишу, проверено или работатет на J 1.7 + К 2.5.4
*

moolkin

  • Захожу иногда
  • 65
  • 15 / 0
Как убрать из url только item, а id материала оставить? Помогите, пожалуйста

я делал в router.php так:
Код
<?php
/**
 * @version                $Id: router.php 1492 2012-02-22 17:40:09Z joomlaworks@gmail.com $
 * @package                K2
 * @author                JoomlaWorks http://www.joomlaworks.net
 * @copyright        Copyright (c) 2006 - 2012 JoomlaWorks Ltd. All rights reserved.
 * @license                GNU/GPL license: http://www.gnu.org/copyleft/gpl.html
 */

// no direct access
defined('_JEXEC') or die('Restricted access');
//SELECT alias FROM `j25_k2_items` WHERE id = "1" LIMIT 1
//SELECT id FROM `j25_k2_items` WHERE alias = "test" LIMIT 1
function K2BuildRoute( & $query) {

    $segments = array ();

    $menu = & JSite::getMenu();
    if ( empty($query['Itemid'])) {
        $menuItem = & $menu->getActive();
    }
    else {
        $menuItem = & $menu->getItem($query['Itemid']);
    }
    $mView = ( empty($menuItem->query['view']))?null:$menuItem->query['view'];
    $mTask = ( empty($menuItem->query['task']))?null:$menuItem->query['task'];
    $mId = ( empty($menuItem->query['id']))?null:$menuItem->query['id'];
    $mTag = ( empty($menuItem->query['tag']))?null:$menuItem->query['tag'];

    if ( isset ($query['layout'])) {
        unset ($query['layout']);
    }

    if ( $mView == @$query['view'] && $mTask == @$query['task'] && $mId == @intval($query['id']) &&  @intval($query['id']) > 0 ) {
        unset ($query['view']);
        unset ($query['task']);
        unset ($query['id']);
    }

    if ( $mView == @$query['view'] && $mTask == @$query['task'] && $mTag == @$query['tag'] && isset($query['tag']) ) {
        unset ($query['view']);
        unset ($query['task']);
        unset ($query['tag']);
    }

    if ( isset ($query['view'])) {
        $view = $query['view'];
        $segments[] = $view;
        unset ($query['view']);
    }

    if (@ isset ($query['task'])) {
        $task = $query['task'];
        $segments[] = $task;
        unset ($query['task']);
    }

    if ( isset ($query['id'])) {
        $id = $query['id'];
        $segments[] = $id;
        unset ($query['id']);
    }

    if ( isset ($query['cid'])) {
        $cid = $query['cid'];
        $segments[] = $cid;
        unset ($query['cid']);
    }

    if ( isset ($query['tag'])) {
        $tag = $query['tag'];
        $segments[] = $tag;
        unset ($query['tag']);
    }

    if ( isset ($query['year'])) {
        $year = $query['year'];
        $segments[] = $year;
        unset ($query['year']);
    }

    if ( isset ($query['month'])) {
        $month = $query['month'];
        $segments[] = $month;
        unset ($query['month']);
    }

    if ( isset ($query['day'])) {
        $day = $query['day'];
        $segments[] = $day;
        unset ($query['day']);
    }

    if ( isset ($query['task'])) {
        $task = $query['task'];
        $segments[] = $task;
        unset ($query['task']);
    }

        // пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ.
        if(isset($segments[0]))
        {
                if($segments[0]=='item')
                {

                    $segments[0]=$segments[1];
                    $segments[1]=null;

                }
        }
        // пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ. пїЅпїЅпїЅпїЅпїЅ.


    return $segments;
}

function K2ParseRoute($segments) {
    $vars = array ();
        // пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ.
        $id = false;

        if(count($segments)==1)
        {   $alias = explode(':',$segments[0]);
            $id = $alias[0];
        }


        if($id)
        {
                $vars['view'] = 'item';
                $vars['task'] = $id.':'.$alias;
                $vars['id'] = $vars['task'];
        }else{
        // пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ. пїЅпїЅпїЅпїЅпїЅ.



    $vars['view'] = $segments[0];
   if (!isset($segments[1]))
        $segments[1]='';
    $vars['task'] = $segments[1];

    if ($segments[0] == 'itemlist') {


        switch($segments[1]) {

            case 'category':
                $vars['id'] = $segments[2];
                break;

            case 'tag':
                if (isset($segments[2]))
                    $vars['tag'] = $segments[2];
                break;

            case 'user':
                if (isset($segments[2]))
                    $vars['id'] = $segments[2];
                break;

            case 'date':
                if (isset($segments[2]))
                    $vars['year'] = $segments[2];
                if (isset($segments[3]))
                    $vars['month'] = $segments[3];
                if (isset($segments[4])) {
                    $vars['day'] = $segments[4];
                }
                break;

        }

    }

    else if ($segments[0] == 'item') {
        switch($segments[1]) {

            case 'edit':
                if (isset($segments[2]))
                    $vars['cid'] = $segments[2];
                break;

            case 'download':
                if (isset($segments[2]))
                    $vars['id'] = $segments[2];
                break;

            default:
                $vars['id'] = $segments[1];
                break;

        }

    }

        if($segments[0] == 'comments' && isset($segments[1]) && $segments[1] == 'reportSpammer') {
                $vars['id'] = $segments[2];
        }

        // пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ.
        }
        // пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ. пїЅпїЅпїЅпїЅпїЅ.

    return $vars;
}
делаю и помогаю делать сайты на джумле.
кому интересно - стучитесь в мой профиль на фри-лансе
https://www.free-lance.ru/users/Moolkin/
или в аську/скайп
*

virtuoz111

  • Новичок
  • 2
  • 0 / 0
Господа решившие вопрос с исключением item из url низкий Вам поклон, именно это и искал.
Но есть проблема, подскажите, пожалуйста, как вернуть id материала в url. Этого требует специфика товара, товар с одинаковыми названиями но разный по своей конструкции.
*

virtuoz111

  • Новичок
  • 2
  • 0 / 0
Прошу прощения уже как вижу решено
*

Gamaliaka

  • Новичок
  • 6
  • 2 / 1
Было бы неплохо, если бы решение вынесли в первый пост.
*

Zaicev

  • Захожу иногда
  • 120
  • 2 / 0
Подскажите пожалуйста, а как сделать короткую ссылку тега ?
Пример:
Сейчас http://site.ru/component/k2/itemlist/tag/Hamptons.html
Нужно http://site.ru/tag/Hamptons.html
Заранее спасибо!
« Последнее редактирование: 23.09.2012, 15:18:11 от Zaicev »
*

Blister

  • Новичок
  • 2
  • 0 / 0
Здравствуйте, к сожалению в ПХП не силен (все делаю методом "ТЫКА"))
Но, чувствую ответ стоит искать в файле по адресу components/com_k2/templates/default/item.php
Я, увы, тоже в php не очень, но думаю, что item.php ковырять не стОит. Нужно в router.php прописать исключение: видим ссылку содержащую .../item/download/... - изменять не надо. Или, как вариант, сделать умную переадресацию с короткой ссылки на полную. Осталось совсем чуть-чуть до создания нормального бесплатного роутера в К2.
« Последнее редактирование: 24.09.2012, 18:40:20 от Blister »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

k2 router - исключается /item /itemlist/category/ убираем id из ссылок, транлитерация для тегов

Автор lammer

Ответов: 83
Просмотров: 44270
Последний ответ 12.03.2019, 10:07:10
от Pizzadox
Удалить из url component/k2/item!

Автор skb4com

Ответов: 6
Просмотров: 17165
Последний ответ 03.03.2017, 11:16:37
от Hollyfild
k2 - itemlist, item

Автор Semukha

Ответов: 2
Просмотров: 1875
Последний ответ 16.09.2016, 18:24:18
от Septdir
Убрать item

Автор amor333

Ответов: 4
Просмотров: 1687
Последний ответ 13.02.2016, 20:22:42
от amor333
как убрать item и id статьи из url?

Автор serjr2d2

Ответов: 1
Просмотров: 2154
Последний ответ 10.12.2015, 07:51:35
от serjr2d2