Как показать результат работы пункта меню Joomla в виде модуля? - PullRequest
1 голос
/ 09 февраля 2010

Я не уверен, как это поставить ... но я использую определенные модули на моем сайте joomla, которые могут быть показаны только с помощью пункта меню, например, Галерея Phoca, hwdvideoshare и т. Д. Эти модули нельзя отображать в какой-либо конкретной позиции, вместо этого необходимо создать пункт меню, который ссылается на эти модули и показывает их в соответствии с выбранными параметрами конфигурации. Возможно ли каким-либо образом использовать результаты этих кликов по пунктам меню в любой статье? например Я хочу показать видеогалерею для определенной категории в виде модуля (без создания какого-либо пункта меню для нажатия)?

Если мне непонятно, как объяснить мое требование, пожалуйста, задавайте вопросы, и я отвечу, потому что я не уверен, как мне объяснить свое требование и что именно я должен искать.

Ответы [ 4 ]

2 голосов
/ 14 января 2012

Чтобы добавить немного большей сложности, используйте модуль, чтобы поместить базовый URL в iframe следующим образом:

<?php
defined('_JEXEC') or die('Direct Access to this location is not allowed.');
$class = $params->get('class');
$relurl = $params->get('relurl');
$Document =& JFactory::getDocument();
$baseurl = $Document->baseurl;
$url = '';
$j = 0;
while ($j < strlen($relurl)) 
    { 
        $x = substr($relurl,$j,1);
        $j++; 
        if ( $x == '~' ) { $x = $baseurl; }
        $url = $url . $x ;
    }
echo '<iframe class="' . $class . '" src="' . $url . '"></iframe>' . "\n";
?>

Этот модуль принимает параметр типа '~ / index2.php? Option = com_proforms & jid = 3 & cid = -1' и расширяет тильду, чтобы iframe указывал на ваш сайт. Следовательно, вам не нужно менять код, если вы переходите от разработки к живой среде.

0 голосов
/ 23 января 2013

Создать пункт меню, назначаемый модулю. Назовите это подменю, затем добавьте его в файл компонента по умолчанию, чтобы отобразить подменю

$modules = JModuleHelper::getModules('user9');
$document   = JFactory::getDocument();
$renderer   = $document->loadRenderer('module');
$params = array('style'=>'');
$contents = '';
$contents .= $renderer->render(current($modules), $params);

echo $contents;

или используйте {loadposition xxx} в статье или у пользователя

0 голосов
/ 13 февраля 2010

Эх ... вот как ты можешь это сделать. Вы можете создать ссылку на компонент напрямую, создав ссылку, которая выглядит следующим образом:

http://yourblogname.com/index2.php?option=com_(yourcomponentname).

Если вы зайдете в менеджер меню и выберете компонент, на который хотите сослаться, где-то там вы увидите похожий URL.

Изменяя этот URL-адрес на «index2.php» вместо «index.php», вы заставляете Joomla напрямую ссылаться на компонент и выводить его необработанный вывод на страницу.

Теперь, если вы хотите поместить свой компонент в модуль где-то еще на странице, вы можете просто создать пользовательский модуль HTML и вставить и вставить его с этим исходным URL. Грязно, но это лучший вариант, который я знаю.

0 голосов
/ 12 февраля 2010

Если вы используете определенные «модули», которые можно отобразить только с помощью пункта меню, они не являются модулями, они компоненты .

Расширения в Joomla делятся на«Компоненты», «Модули» и «Плагины». Узнайте их различия.

Модуль

Модуль - это расширение, используемое для отображения простой информации.Последние новости - это пример модуля.

Для достижения ваших целей (по крайней мере, в Phoca Gallery) вы можете скачать Модуль Phoca Gallery , а затем вставить свой модуль.в статьи .

...