2016-07-28 9 views
1

это моя проблема ...Как загрузить модуль joomla в качестве ссылки?

У меня есть некоторые изображения и ссылки, которые я хочу загрузить с помощью разных модулей joomla, когда пользователь нажимает на них.

значит каждая гиперссылка может загрузить другой модуль, | Поместите

спасибо всем

ответ

0

В случае, если вы просто хотите вызвать содержание соответствующего модуля из URL следующий ответ поможет вам.

Если вы просто хотите, чтобы показать/скрыть модуль в одной и той же странице вы можете использовать что-то похожее на мой предыдущий ответ: Joomla 3 Show different modules on same position depending on toggler

Joomla обеспечивает функциональные возможности для вызова определенного файла активного шаблона путем добавления tmpl=FILENAME ключ/значение в строку запроса url. Все встроенные шаблоны имеют файл component.php, если пользователь хочет загрузить шаблон только с помощью компонента. Вы можете проверить следующую ссылку для получения более подробной информации: Adding print pop-up functionality to a component.

Вы можете сделать что-то похожее только на отображение модулей, которые вы хотите загрузить. Вы можете скопировать компонент.php в новый файл (я использовал custom.php) и добавил следующий код php в части <body> ... </body>.

<?php 
    $jinput = JFactory::getApplication()->input; 
    $selectedPosition = $jinput->getString("position", ""); 
    $selectedModule = $jinput->getString("module", ""); 
    $selectedModuleTitle = $jinput->getString("title"); 

    if($selectedPosition !== "") { 
     $modules = JModuleHelper::getModules($selectedPosition); 
     foreach ($modules as $module) { 
      echo JModuleHelper::renderModule($module); 
     } 
    } elseif ($selectedModule !== "") { 
     $module = JModuleHelper::getModule($selectedModule, $selectedModuleTitle); 
     echo JModuleHelper::renderModule($module); 
    } 
?> 

Так с аналогичным способом, как loadposition/loadmodule работ можно назвать новый файл шаблона с помощью:

index.php?tmpl=custom&position=MODULE_POSITION 

или

index.php?tmpl=custom&module=MODULE_TYPE 

или

index.php?tmpl=custom&module=MODULE_TYPE&title=MODULE_TITLE 

Необязательно, если вам хотите загрузить m МОДУЛЬ с определенным стилем, вы могли бы передать его на второй из параметра Я метода renderModule как:

echo JModuleHelper::renderModule($module, array("style" => "xhtml")); 

Надеется, что это помогает