Модуль в Joomla вызывается только один раз

Модуль в Joomla вызывается только один раз

10.08.2019 01:12:19 Просмотров 47 Источник

У меня есть компонент, который вызывает модуль с помощью

< ?php
$modules = JModuleHelper::getModules('modulename');
foreach ($modules as $module) {
echo JModuleHelper::renderModule($module);
}
? >

Это вызывается несколько раз внутри оператора foreach, однако я заметил, что если я помещаю rand() или microtime () внутри модуля, кажется, что он выполняется только один раз, а затем копируется на другие вызовы (например, кэш?). Почему это так? Мне нужны уникальные идентификаторы внутри этого модуля. Есть ли способ переопределить это и заставить другой контент для каждого модуля визуализации?

У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/57437678/module-in-joomla-only-called-once#comment101518348_57437678
Пожалуйста, разместите свои вопросы Joomla на Joomla Stack Exchange. Нам нужно больше вопросов, чтобы помочь сообществу расти. area51.stackexchange.com/proposals/58842?phase=beta

Ответы - Модуль в Joomla вызывается только один раз / Module in Joomla only called once

Является ответом!
Riccardo Zorn

11.08.2019 11:03:46

Это может зависеть от кэша или от реализации модуля.

На глобальном уровне можно отключить кэширование в глобальной конфигурации или запретить использование кэша в конфигурации отдельного модуля.

Вы должны установить кэш в "консервативный", а не прогрессивный, так как последний действительно может испортить копии одного и того же модуля на одной странице.

Наконец, кэш реализован в коде модуля, поэтому он в конечном счете функционирует в предположении, что все разработчики правильно реализуют все стратегии кэша; что верно для большинства расширений, но не для всех.

Закрыть X