Новости Joomla

Как тестировать Joomla PHP-разработчику? Компонент Patch tester.

👩‍💻 Как тестировать Joomla PHP-разработчику? Компонент Patch tester.Joomla - open source PHP-фреймворк с готовой админкой. Его основная разработка ведётся на GitHub. Для того, чтобы международному сообществу разработчиков было удобнее тестировать Pull Requests был создан компонент Patch Tester, который позволяет "накатить" на текущую установку Joomla именно те изменения, которые необходимо протестировать. На стороне инфраструктуры Joomla для каждого PR собираются готовые пакеты, в которых находится ядро + предложенные изменения. В каждом PR обычно находятся инструкции по тестированию: куда зайти, что нажать, ожидаемый результат. Тестировщики могут предположить дополнительные сценарии, исходя из своего опыта и найти баги, о которых сообщить разработчику. Или не найти, и тогда улучшение или исправление ошибки быстрее войдёт в ядро Joomla. Напомню, что для того, чтобы PR вошёл в ядро Joomla нужны минимум 2 положительных теста от 2 участников сообщества, кроме автора. Видео на YouTubeВидео на VK ВидеоВидео на RuTubeКомпонент на GitHub https://github.com/joomla-extensions/patchtester@joomlafeed#joomla #php #webdev #community

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

saharin88

  • Захожу иногда
  • 291
  • 20 / 1
  • JoomWork
есть модуль bla и позиция для вывода модулей left
если модуль bla пустой и активный, но при этом $this->countModules('left') > 0, то как скрыть всю позицию для модулей?
спасибо

еще такой вопрос:
можно ли как то отключить модуль в самом коде, вот у меня например есть модуль он выводит список материалов, но если по условию материалов нет, count($items)=0, что делать?
« Последнее редактирование: 18.11.2013, 16:29:39 от saharin88 »
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Код: php-brief
<?php if($this->countModules('left')):?>
<div id="left">
Left
</div>
<?php endif; ?>
и
Код: php-brief
if(!count($items)) return;
*

saharin88

  • Захожу иногда
  • 291
  • 20 / 1
  • JoomWork
Код: php-brief
<?php if($this->countModules('left')):?>
<div id="left">
Left
</div>
<?php endif; ?>
и
Код: php-brief
if(!count($items)) return;


не, вы меня не поняли, if($this->countModules('left')) возвращает 1, просто пустой модуль выводится, то есть позиция отображается
как отключить модуль или поставить дополнительное условие на проверку пустого модуля Modules('left')!= ""

по второму, допустим  if(empty($items)) return false;  что толку, модуль то серавно выводится, он же включен $this->countModules('left') возвращает 1
« Последнее редактирование: 18.11.2013, 17:23:05 от saharin88 »
*

saharin88

  • Захожу иногда
  • 291
  • 20 / 1
  • JoomWork
это тоже не то
в массиве (JModuleHelper::getModules('left')) модулей для позиции значение сервно есть, то беж $this->countModules('left') возвращает 1
*

saharin88

  • Захожу иногда
  • 291
  • 20 / 1
  • JoomWork
гуру где вы?))
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Задача непонятна, если честно. countModules вроде бы всегда все задачи решал. Что нужно в вашем случае непонятно. Вы хотите, чтобы выводился пустой модуль, но работала проверка? Вроде: если модуль всё-таки есть, но он пустой, то считать, что его нет?
*

saharin88

  • Захожу иногда
  • 291
  • 20 / 1
  • JoomWork
Задача непонятна, если честно. countModules вроде бы всегда все задачи решал. Что нужно в вашем случае непонятно. Вы хотите, чтобы выводился пустой модуль, но работала проверка? Вроде: если модуль всё-таки есть, но он пустой, то считать, что его нет?


вроде и так все понятно написал, но еще раз попытаюсь объяснить: у меня есть позиция модулей left, и есть модуль bla в этой позиции, когда модуль пустой и эму нечего выводить, то позиция серавно отображается, потому что $this->countModules('left') возвращает 1

Код
<?php if($this->countModules('left')) : ?>
  <div id="left">
    <jdoc:include type="modules" name="left" />
  </div>
<?php endif; ?>

то есть выводится <div id="left"> </div>

вопрос: как сделать чтоб позиция не отображалась если модулю нечего выводить, то беж $this->countModules('left') должен возвращать 0, или какое то условие, которое бы проверяло модуль на наличие содержимого


*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Оберните условием вывод модулей в modules.php шаблона. if(module->content).
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
это проблемы модуля
ковыряйте модуль или код модуля в студию
это не проблемы модуля, а проблемы if($this->countModules('left'))
потому что эта конструкция привязана не к пуст\не пуст модуль, а к тому опубликован он или нет в этой позиции на этой странице
вроде по моей ссылке оно как раз и решалось, товарищ istaan предлагал свой вариант через modules.php, но тему я уже не найду...
*

saharin88

  • Захожу иногда
  • 291
  • 20 / 1
  • JoomWork
это проблемы модуля
ковыряйте модуль или код модуля в студию

простой список материалов по условию
а что в самом модуле можно как то отключить его (модуль)?


Оберните условием вывод модулей в modules.php шаблона. if(module->content).

та это ничего не даст, разве в самом шаблоне можно как то проверить на наличие содержимого в модуле if($this->countModules('left') && $module->content != ""), для того чтоб позиция не выводилась
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Элли дело говорит. Это я затупил. Неважно, пустой у вас модуль или нет, условие countModules проверяет, опубликован ли хоть один модуля. Проблема видимо в условии. Целиком код страницы в спойлере и обёрнутый ВВтэгом приложите. Ошибка видимо где-то.
*

saharin88

  • Захожу иногда
  • 291
  • 20 / 1
  • JoomWork
Элли дело говорит. Это я затупил. Неважно, пустой у вас модуль или нет, условие countModules проверяет, опубликован ли хоть один модуля. Проблема видимо в условии. Целиком код страницы в спойлере и обёрнутый ВВтэгом приложите. Ошибка видимо где-то.

так а какой именно код, модуля?
обычный модуль, helper возвращает массив материалов

Код
<?
defined('_JEXEC') or die;

require_once dirname(__FILE__).'/helper.php';
// Выполняем getList метод из помошника
$list = modItemsHelper::getList($params);

require JModuleHelper::getLayoutPath('mod_items', $params->get('layout', 'default'));
?>


а вообще есть возможность как то отключить модуль из кода, или убрать запись в массиве JModuleHelper::getModule('left')?
« Последнее редактирование: 19.11.2013, 16:52:42 от saharin88 »
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Код: php-brief
<?php if($this->getBuffer('modules','left')):?>
<div id="left">
Left
</div>
<?php endif; ?>
если не поможет приведите, что выведет
Код: php-brief
var_dump($this->getBuffer('modules','left'));
*

saharin88

  • Захожу иногда
  • 291
  • 20 / 1
  • JoomWork
Код: php-brief
<?php if($this->getBuffer('modules','left')):?>
<div id="left">
Left
</div>
<?php endif; ?>
если не поможет приведите, что выведет
Код: php-brief
var_dump($this->getBuffer('modules','left'));

я так понимаю $this->getBuffer('modules','left') возвращает содержимое модулей для указанной позиции?!

большое спасибо! работает условие!

Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не работает GTranslate модуль

Автор rapsila

Ответов: 19
Просмотров: 3580
Последний ответ 06.09.2022, 22:52:02
от rapsila
Как сделать модуль на полный экран? Подробнее в в теме?

Автор 62411

Ответов: 3
Просмотров: 1801
Последний ответ 23.02.2022, 20:35:06
от marksetter
Не отображается модуль html код

Автор 62411

Ответов: 20
Просмотров: 2118
Последний ответ 23.02.2022, 05:34:09
от 62411
Необходимо расширение (модуль) для карточки товара: обзор 360

Автор Yarilo88

Ответов: 25
Просмотров: 2299
Последний ответ 27.03.2019, 14:51:48
от effrit
Категория как ссылка на модуль

Автор PyCu4

Ответов: 4
Просмотров: 1347
Последний ответ 23.01.2019, 13:57:08
от PyCu4