1. Вниманию авторов!

    Темы из разделов платных услуг удаляются, если:
    • тема создана более 2-х месяцев назад И
    • внутри темы не ведётся активных обсуждений задачи И
    • автор не уведомил администрацию об актуальности задачи.
    Так же тема будет удалена, если:
    • есть подозрение на мошеннические действия со стороны автора;
    • в задаче предлагается оказать содействие в разработке ресурсов, направленность которых противоречит законодательству РФ и моральным устоям здорового общества.
    Dismiss Notice

Хочу сам написать модуль

Discussion in 'АРХИВ' started by ims, Oct 2, 2008.

  1. Offline

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

    Joined:
    Jul 3, 2008
    Messages:
    13
    Likes Received:
    0
    Хочу сам попробовать написать модуль.
    В документации не всё нашел.
    Возникли такие вопросы:
    1. Если в .xml делаю
    <params>
    <param name="test" type="text" default="">
    </params>
    То данные из параметра где сохранятся и как из потом считывать?

    2. Мне надо из шаблона вызывать этот модуль несколько раз, но с разным
    параметром. Как это лучше реализовать?
    А вызвать, напимер так:
    <?php mosLoadModules ( 'user7',"one" ); ?>
    <?php mosLoadModules ( 'user8',"two" ); ?>
    <?php mosLoadModules ( 'user9',"sec" ); ?>
    И соответственно обрабатываем согласно параметров при вызове one, rwo или sec
     
  2.  
  3. Offline

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

    Joined:
    Mar 2, 2008
    Messages:
    5
    Likes Received:
    0
    Gender:
    Male
    Параметры из блока <params>...</params> сохраняются в поле params таблицы #__modules
    Как с ними работать дальше в php файле - разбери код любого стандартного модуля и увидишь, что получение их идет примерно так
    $field = intval( $params->get( 'field, 0 ) );
     
  4. Offline

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

    Joined:
    Jul 3, 2008
    Messages:
    13
    Likes Received:
    0
    Начал делать.
    пробую вызывать так:
    mosLoadModules ( 'user7', 'id1' );

    Ни где в окружении не вижу, как можно поймать передаваемый параметр id1?
     
  5. Offline

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

    Joined:
    Mar 2, 2008
    Messages:
    5
    Likes Received:
    0
    Gender:
    Male
    не понял, что за mosLoadModules ( 'user7', 'id1' );
    Вставка позиции для вызова модулей пишется так - mosLoadModules ( 'top', -2 ); (второй параметр - тип вывода модуля), а отлавливать передаваемые параметры из настроек нужно в самом php файле модуля, как - я писал выше
     
  6. Offline

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

    Joined:
    Jul 3, 2008
    Messages:
    13
    Likes Received:
    0
    Какие типы вывода бывают?
     
  7. Offline

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

    Joined:
    Mar 2, 2008
    Messages:
    5
    Likes Received:
    0
    Gender:
    Male
  8. OlegM
    Offline

    OlegM Russian Joomla! Team Staff Member

    Joined:
    Apr 12, 2007
    Messages:
    4,310
    Likes Received:
    375
    Gender:
    Male
  9. Offline

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

    Joined:
    Mar 2, 2008
    Messages:
    5
    Likes Received:
    0
    Gender:
    Male
    sourpuss - прошу прощения, больше не повторится, у вас больше знаю раздел по программированию, частенько там сижу, но не по общим вопросам :)
     
  10. Offline

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

    Joined:
    Jul 3, 2008
    Messages:
    13
    Likes Received:
    0
    Спасибо за подсказки

    Добавлено через 12 минут
    Почитал. Всё понятно. Но...
    Я и хотел в модуле увидеть с каким параметром он запущен.
    И если надо, в соответствии с параметром делать свои действия.
    А так же может использовать свои параметры.
     
    Last edited: Oct 12, 2008
  11. Dead Krolik
    Offline

    Dead Krolik Недавно здесь => Cпециалист <=

    Joined:
    Apr 13, 2007
    Messages:
    3,685
    Likes Received:
    101
    Gender:
    Male
    Не мудри. Хочется взаимодействия шаблона и модуля, так пусть это будет работать через их функции. Перед вызовом модуля в шаблоне пихаешь в статичный метод своего класса нужную информацию, а в модуле достаешь. Ну или через глобальные переменные. Как больше нравится.
     

Share This Page

Loading...