Рандом модулей в одной позиции

Discussion in 'Подбор расширений' started by Fanamura, Nov 17, 2007.

  1. Fanamura
    Offline

    Fanamura Доброта

    Joined:
    Mar 12, 2007
    Messages:
    5,094
    Likes Received:
    158
    Gender:
    Male
    САБЖ. Нужен модуль, который может показывать "внутри" себя другие, причем показывая их по очереди (как счетчик), а не в зависимости от раздела и т.д. Подскажите плиз.
    Нужен такой модуль, у меня где-то был, но найти не могу :(
     
  2.  
  3. Azazello
    Offline

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

    Joined:
    Mar 24, 2007
    Messages:
    190
    Likes Received:
    4
    Gender:
    Male
    Ответ: Рандом модулей в одной позиции

    Тогда поправь название топика, так как это уже не Рандом.
    Что-то такие мысли раньше в голову не приходили модуль для показа модулей ...хитро. Боюсь придется тебе заказывать такое чудо.
     
    Last edited: Nov 17, 2007
  4. Fanamura
    Offline

    Fanamura Доброта

    Joined:
    Mar 12, 2007
    Messages:
    5,094
    Likes Received:
    158
    Gender:
    Male
    Ответ: Рандом модулей в одной позиции

    Azazello, был такой...
    блин...самому писать лень
     
  5. Azazello
    Offline

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

    Joined:
    Mar 24, 2007
    Messages:
    190
    Likes Received:
    4
    Gender:
    Male
    Ответ: Рандом модулей в одной позиции

    Попробуй глянуть здесь http://joomlaforum.ru/index.php/topic,21561.0.html это часом не то что ищешь?
     
  6. Dead Krolik
    Offline

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

    Joined:
    Apr 13, 2007
    Messages:
    3,685
    Likes Received:
    101
    Gender:
    Male
    Ответ: Рандом модулей в одной позиции

    Это в статье. mosmodule не умеет в шаблоне крутиться.

    На самом деле все не так и сложно, небольшой хак функции mosLoadModules. В шаблоне в нужном месте делаем:
    Код (CODE):
    1. mosLoadModules ( 'позиция', настройка_показа ,true);

    и саму функцию фиксим (файл /includes/frontend.php)
    Код (CODE):
    1. function mosLoadModules( $position='left', $style=0, $show_random = false ) {
    2.  
    3. ...
    4.  
    5.     $allModules =& initModules();
    6.     if (isset( $GLOBALS['_MOS_MODULES'][$position] )) {
    7.         $modules = $GLOBALS['_MOS_MODULES'][$position];
    8.     } else {
    9.         $modules = array();
    10.     }
    11. //дописываем тут
    12.  
    13. if ($show_random && sizeof($modules)>0) {
    14.    
    15.     $tmp = $modules[rand(0,sizeof($modules)-1)];
    16.     $modules = array($tmp);
    17. }
    18.  
    19. //конец дописки
    20.     if (count( $modules ) < 1) {
    21.         $style = 0;
    22.     }


    Об исполнении доложить.
     
    Fanamura likes this.
  7. Jkr
    Offline

    Jkr Группа поддержки

    Joined:
    Aug 4, 2006
    Messages:
    464
    Likes Received:
    27
    Gender:
    Male
    Ответ: Рандом модулей в одной позиции

    можно делать так:
    - нужные к ротации модули запихать в позиции user1-user9 (или любые другие, например, созданные random1-random15)
    - в начале шаблона пишем: $tmp = rand(0,количество_модулей);
    - в месте вывода модулей пишем mosLoadModules ('user'.$tmp);
     
  8. Fanamura
    Offline

    Fanamura Доброта

    Joined:
    Mar 12, 2007
    Messages:
    5,094
    Likes Received:
    158
    Gender:
    Male
    Ответ: Рандом модулей в одной позиции

    Спасибо, други мои:)
     

Share This Page

Loading...