sef urls для custom component , что лучше?

Тема в разделе "Joomla и SEF (ЧПУ)", создана пользователем devlabs, 03.03.2010.

  1. Offline

    devlabs Недавно здесь

    Регистрация:
    03.03.2010
    Сообщения:
    8
    Симпатии:
    0
    Пол:
    Мужской
    разрабатываю кастомный компонент с нуля для joomla 1.5.X
    нужны sef url
    у joomla sef url хромают

    существует два основных компонента
    - Artio sef
    - sh404sef

    Установил artio, на главной странице компонента + 100 mysql query
    компонент все sef url хранит в бд. много дубликатов типа: home-1, home-2, home-3 и т.д.
    Проблема в самом компоненте или это из-за того что не написал отдельный extention для кастомного компонента. уменьшит ли написание com_extention для artio количество обращений к бд ?

    Установил sh404 ,бд вроде не грузится, но трудновато разобраться с тем как переписать sef url

    Альтернативный вариант писать вручную rewrite rules в htaccess

    Что посоветуете?
     
  2.  
  3. Fanamura
    Offline

    Fanamura Доброта

    Регистрация:
    12.03.2007
    Сообщения:
    5 108
    Симпатии:
    159
    Пол:
    Мужской
    devlabs, разбираться в sh404 :)
     
  4. Offline

    botanist специалист

    Регистрация:
    15.02.2009
    Сообщения:
    461
    Симпатии:
    49
    Пол:
    Мужской
    Написать для компонента свой роутер
    http://docs.joomla.org/Routing
     
  5. Offline

    devlabs Недавно здесь

    Регистрация:
    03.03.2010
    Сообщения:
    8
    Симпатии:
    0
    Пол:
    Мужской
    thanks, тоже к этой мысле пришел.

    есть ли какой то MVC компонент(в joomla.extentions) на примере которого можно посмотреть как работает готовый роутер?
     
  6. Offline

    botanist специалист

    Регистрация:
    15.02.2009
    Сообщения:
    461
    Симпатии:
    49
    Пол:
    Мужской
    components/com_content/route.php
     
  7. Offline

    devlabs Недавно здесь

    Регистрация:
    03.03.2010
    Сообщения:
    8
    Симпатии:
    0
    Пол:
    Мужской
    если сделать нормальные sef url особо проблем нет, почему тогда до сих пор в com_content такие рагульные sef url?

    чего то я не понимаю. лучше б сделали нормальные sef url в 1.6, как по мне то это более актуальная фича.
     
  8. Offline

    devlabs Недавно здесь

    Регистрация:
    03.03.2010
    Сообщения:
    8
    Симпатии:
    0
    Пол:
    Мужской
    В router.php

    Код (CODE):
    1. if(isset($query['option']))
    2.        {
    3.                 $segments[] = $query['option']; // with or without this line
    4.                 unset( $query['option'] );
    5.        }




    есть ссылка
    echo JRoute::_( 'index.php?option=com_name&controller=new&task=build');

    почему при преобразовании ссылки
    "option=com_name" заменяется на "component/com_name"

    вместо
    /com_name/ or /name/

    в sef URL ?
     
  9. Offline

    botanist специалист

    Регистрация:
    15.02.2009
    Сообщения:
    461
    Симпатии:
    49
    Пол:
    Мужской
    К ссыле добавляй Itemid=ххх. Без него роутер не знает алиас какого пункта меню брать и подставляет component/com_name
     
  10. Offline

    devlabs Недавно здесь

    Регистрация:
    03.03.2010
    Сообщения:
    8
    Симпатии:
    0
    Пол:
    Мужской
    если itemid не нужен, можно поставить itemid=1
    а можно ли где то отключить это на уровень выше что б вообще не требовался itemid?
     
  11. Offline

    botanist специалист

    Регистрация:
    15.02.2009
    Сообщения:
    461
    Симпатии:
    49
    Пол:
    Мужской
    includes/router.php
     

Поделиться этой страницей

Загрузка...