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

spirit1086

  • Осваиваюсь на форуме
  • 120
  • 1
Параметры модуля
« : 17.11.2015, 10:05:30 »
Здравствуйте, в модуле ест параметр count- выводит количество записей. Этот модуль используется на главной в двух позициях. Но в обоих позициях выводится одинаковое количество.
Параметры модуля получаю
Код
$module = JModuleHelper::getModule('mod_last');
        $params = new JRegistry($module->params);
        $count = $params->get('count');
*

NewUsers

  • Завсегдатай
  • 643
  • 51
Re: Параметры модуля
« Ответ #1 : 17.11.2015, 10:19:12 »
Но в обоих позициях выводится одинаковое количество.

А чего ты ожидал? Что будет выводиться везде по разному...

Если выводишь это в самом модуле, то этот код там не надо...
Просто выводи...
Код
        echo $params->get('count');
*

spirit1086

  • Осваиваюсь на форуме
  • 120
  • 1
Re: Параметры модуля
« Ответ #2 : 17.11.2015, 11:23:11 »
Этот код у меня в helper'e модуля
Код
$module = JModuleHelper::getModule('mod_last');
        $params = new JRegistry($module->params);
        $count = $params->get('count');
если я напишу просто
Код
        $count = $params->get('count');
то выдает ошибку 500
*

NewUsers

  • Завсегдатай
  • 643
  • 51
Re: Параметры модуля
« Ответ #3 : 17.11.2015, 11:50:16 »
если я напишу просто
Код
        $count = $params->get('count');
то выдает ошибку 500

Тогда сделай вот так...

Это у нас к примеру будет helper.php
Код
public static function getPrimerFunction(&$params)
{
return $params->get('count');
}

Классу него будет - modPrimerHelper

В файле mod_name.php выводим...
Код
echo modPrimerHelper::getPrimerFunction($params);
*

spirit1086

  • Осваиваюсь на форуме
  • 120
  • 1
Re: Параметры модуля
« Ответ #4 : 17.11.2015, 14:31:38 »
КОд хелпера
Код
        $module = JModuleHelper::getModule('mod_lastprofiles');
        $params = new JRegistry($module->params);
        $count = $params->get('count');
        
        if ($count!="")
        {
          $col=" LIMIT 0,".$count;  
        }
        else
        {
          $col="";  
        }    
        
$query = "SELECT * FROM  #__users  ".$col;
$db->setQuery($query);
$last = $db->loadObjectList();
везде выводи количество юзеров столько сколько указано в первом опубликованном модуле, таких модулей два и у них разное количество выводить надо, если убрать первые две строки то выдает ошибку 500
Код
$module = JModuleHelper::getModule('mod_lastprofiles');
        $params = new JRegistry($module->params);
*

NewUsers

  • Завсегдатай
  • 643
  • 51
Re: Параметры модуля
« Ответ #5 : 17.11.2015, 15:59:33 »
если убрать первые две строки то выдает ошибку 500
Код
$module = JModuleHelper::getModule('mod_lastprofiles');
        $params = new JRegistry($module->params);

Тогда значение
Код
$count = $params->get('count');

Отправляй в метод хелпера...


Сделай вот так... Файл helper.php
Код
public static function allUserCount($count)
{
if ($count!="")
        {
          $col=" LIMIT 0,".$count; 
        }
        else
        {
          $col=""; 
        }   
       
    $query = "SELECT * FROM  #__users  ".$count;
    $db->setQuery($query);
    $last = $db->loadObjectList();

return $last;
}
где, переменная $count - уже будет содержать значение параметра count

Выполняй метод таким образом...
Код
modPrimerHelper::allUserCount($params->get('count'));(
Этот код надо указать в файле mod_name.php
*

Aleks.Denezh

  • Практически профи
  • 2806
  • 377
Re: Параметры модуля
« Ответ #6 : 17.11.2015, 16:26:04 »
$module = JModuleHelper::getModule('mod_last'); получит первый модуль с этим названием, а не все!
Перебирайте в позиции, или берите по тайтлу модуль!
$module = JModuleHelper::getModule('mod_last', 'тут Title модуля что вы написал в админке');
тогда вы можете взять два разных модуля с разными именами (если они с разными именами)

Если имя одно то получайте по модульной позиции:

Код: php
function getModuleParams( $position, $type )
{
$modules = JModuleHelper::getModules( $position );
foreach ( $modules as $module ) {
if ( $module->module === $type ) {
return new JRegistry( $module->params );
}
}
}
$params1 = getModuleParams( 'тут имя первой позиции модуля', 'mod_last' );
$params2 = getModuleParams( 'тут имя второй позиции модуля', 'mod_last' );
Мой  блог по разработке на Joomla CMS!
Хотите отблагодарить материально? Мой WMR: R861060179016
*

spirit1086

  • Осваиваюсь на форуме
  • 120
  • 1
Re: Параметры модуля
« Ответ #7 : 17.11.2015, 19:55:10 »
Тогда значение
Код
$count = $params->get('count');

Отправляй в метод хелпера...


Сделай вот так... Файл helper.php
Код
public static function allUserCount($count)
{
if ($count!="")
        {
          $col=" LIMIT 0,".$count; 
        }
        else
        {
          $col=""; 
        }   
       
    $query = "SELECT * FROM  #__users  ".$count;
    $db->setQuery($query);
    $last = $db->loadObjectList();

return $last;
}
где, переменная $count - уже будет содержать значение параметра count

Выполняй метод таким образом...
Код
modPrimerHelper::allUserCount($params->get('count'));(
Этот код надо указать в файле mod_name.php
Спасибо помогло +
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

вывести данные из модуля с формой Subform form field type

Автор Glog

Ответов: 19
Просмотров: 376
Последний ответ 22.06.2017, 13:32:07
от Glog
Ошибка при попытке получить параметры активного пункта меню в контроллере компонента

Автор Inoken

Ответов: 10
Просмотров: 184
Последний ответ 19.06.2017, 14:29:22
от dmitry_stas
Зависимость модуля от компонента и страницы

Автор Тренд

Ответов: 34
Просмотров: 357
Последний ответ 16.06.2017, 19:48:39
от dmitry_stas
Ошибка при создании модуля

Автор White_Tiger

Ответов: 7
Просмотров: 746
Последний ответ 01.02.2016, 14:33:46
от robert
Com_contact как получить Email из модуля

Автор tystnaden

Ответов: 4
Просмотров: 344
Последний ответ 16.12.2015, 19:50:42
от tystnaden