Joomla 1.5 Как создать тип пункта меню для своего компонента

Тема в разделе "Создание расширений для Joomla", создана пользователем mylovemy, 25.11.2010.

  1. Offline

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

    Регистрация:
    25.11.2010
    Сообщения:
    8
    Симпатии:
    1
    Пол:
    Женский
    Добрый день.

    Я создала свой компонент. Теперь пытаюсь сделать пункт меню с ссылкой на него. Создала файл metadata.xml в папке \com_имя_компонента\views\имя_вида и default.xml в папке \com_имя_компонента\views\имя_вида\tmpl. Но все равно у меня никаких типов не создается. Подскажите, что я делаю не так?

    Заранее, спасибо .
     
    hendrix нравится это.
  2.  
  3. omfgpanda
    Offline

    omfgpanda специалист

    Регистрация:
    22.01.2008
    Сообщения:
    673
    Симпатии:
    53
    Пол:
    Мужской
    вам ничего не надо ни где создавать ! Если вы правильно организовали MVC структуру компонента, то все должно появиться ;)

    Хммм.... о каком меню идет речь ? Админская или клиентская часть ?
     
  4. Offline

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

    Регистрация:
    25.11.2010
    Сообщения:
    8
    Симпатии:
    1
    Пол:
    Женский
    Речь идет о главном меню на клиентской части. Я заметила, что иногда и без этих файлов все работает. Вообщем хз....
     
  5. Offline

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

    Регистрация:
    25.11.2010
    Сообщения:
    8
    Симпатии:
    1
    Пол:
    Женский
    Я разобралась. Надо было всего лишь убрать нижнее подчеркивание из названия компонента. Странно, я нигде не встречала, чтобы где-нибудь было написано, что нельзя использовать '_' в названии компонента.

    У меня теперь другой вопрос. Я создавала меню для компонента, для того чтобы на первой странице компонента прикрутить модуль mod_login, чтобы только зарегистрированные пользователи имели доступ к информации. Я так поняла что модуль можно привязать только к какому-то пункту меню. Я привязала модуль, зарегистрировала пользователя, и когда пытаюсь зайти, не пускает. Такое ощущение, что он вообще не работает. Если заходить под любым логином и паролем, даже ошибок не выдает, что такого пользователя нет. Я не знаю что делать....
     
  6. omfgpanda
    Offline

    omfgpanda специалист

    Регистрация:
    22.01.2008
    Сообщения:
    673
    Симпатии:
    53
    Пол:
    Мужской
    Когда создадите пункт меню, для вашего компонента, то в настройках этого пункта есть параметр "Уровень доступа", там укажите "Участники" и все )
     
  7. Offline

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

    Регистрация:
    25.11.2010
    Сообщения:
    8
    Симпатии:
    1
    Пол:
    Женский
    Извините, на выходных не было возможности зайти сюда.

    Вы правы, если поменять "Уровень доступа", то все работает. Но это не то, что мне надо. Мне нужно, чтобы все пользователи видели форму, а зайти могли только те, которые зарегистрированы. Форма не работает только при уровне доступа "Общий". Похоже что скрипт до компонента com_user ваще не доходит. Я сделала трассировку, скрипт грузит 'com_user\router.php' и все. Хотя при других уровнях доступа, компонент отрабатывает правильно и с правильным паролем я имею доступ к информации.

    В чем может быть дело?

    Р.S. Пробовала на локальном сервере тоже самое, все отлично работает
     
  8. omfgpanda
    Offline

    omfgpanda специалист

    Регистрация:
    22.01.2008
    Сообщения:
    673
    Симпатии:
    53
    Пол:
    Мужской
    что то я не совсем вас понимаю ) вы хотите, что бы все видели пункт меню с формой, но перейти к форме по этому пункту меню могли только пользователи определенной группы ?
     
  9. Offline

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

    Регистрация:
    25.11.2010
    Сообщения:
    8
    Симпатии:
    1
    Пол:
    Женский
    Нет, я хочу чтобы все видели пункт меню и перейти по нему к форме авторизации могли тоже все, а вот получить доступ к информации могли только те пользователи, которые ввели правильно логин и пароль.
     
  10. omfgpanda
    Offline

    omfgpanda специалист

    Регистрация:
    22.01.2008
    Сообщения:
    673
    Симпатии:
    53
    Пол:
    Мужской
    т.е. у вас есть компонент, который содержит некую форму, так ? вы создаете пункт меню для него и когда незарегистрированный пользователь нажимает на этот пункт меню, то его перекидывает к форме авторизации, и после того как он вводит логин/пароль, попадает на ваш компонент с формой, так ?
     
  11. Offline

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

    Регистрация:
    25.11.2010
    Сообщения:
    8
    Симпатии:
    1
    Пол:
    Женский
    Смотрите, мне нужно создать компонент, чтобы к информации в нем имели доступ не все. Сначала форма с авторизацией у меня была в компоненте, и я сама в нем проверяла. есть такой пользователь или нет. Это не очень удобно и тем более, в joomla есть встроенные для этого вещи. Я убрала из своего компонента все, что касалось авторизации, чтобы прикрутить модуль mod_login. Как я поняла, чтобы его добавить к компоненту, надо добавить пункт меню для моего компонента. Я добавила пункт меню, прикрутила модуль (и у меню и у модуля уровень доступа общий), и авторизация не проходит. хотя есть такой пользователь и данные правильные. А когда я поменяла уровень доступа у пункта меню на "Участники", все работает. но соответственно этот пункт меню видят не все. Другое дело, что в данном случае этого и требуется, но все равно вопрос, почему оно так работает?
     
  12. omfgpanda
    Offline

    omfgpanda специалист

    Регистрация:
    22.01.2008
    Сообщения:
    673
    Симпатии:
    53
    Пол:
    Мужской
    Тааааак .... какие знание в ПХП ? знаете что такое ACL ?
     
  13. Offline

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

    Регистрация:
    25.11.2010
    Сообщения:
    8
    Симпатии:
    1
    Пол:
    Женский
    Про ACL я в joomla что-то читала. А php я нормально знаю :) по крайней мере на мой взгляд :)
     
  14. omfgpanda
    Offline

    omfgpanda специалист

    Регистрация:
    22.01.2008
    Сообщения:
    673
    Симпатии:
    53
    Пол:
    Мужской
    Ясно, ну если нормально, то будет на много проще изъясняться ) Прочитайте доки про АЦЛ и затем в модели вашего компонента, которая отвечает за генерацию вашей формы установите нужные уровни доступа. Модуль авторизации добавлять не нужно, при правильном использовании АЦЛ пользователя автоматически перекинет на страничку авторизации , а затем обратно на компонент )

    Или топайте в libraries/joomla/user/authorithation.php и там выставьте уровень доступа на компонент.
     
    mylovemy нравится это.
  15. Offline

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

    Регистрация:
    25.11.2010
    Сообщения:
    8
    Симпатии:
    1
    Пол:
    Женский
    Спасибо, буду разбираться!
     

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

Загрузка...