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

timofe

  • Захожу иногда
  • 148
  • 0 / 0
  • alex tim.
Вывести модуль в iframe
« : 08.12.2020, 16:13:18 »
Всем привет!

Стоит задача:
Есть страница, в которой выводится фреймом файл php
В этом файле текст и картинки, но нужно еще вывести один из модулей Joomla

Google толком не помог(
*

sivers

  • Живу я здесь
  • 2494
  • 339 / 0
Re: Вывести модуль в iframe
« Ответ #1 : 08.12.2020, 16:44:33 »
Стоит задача...
В своем пхп-скрипте подключить фреймворк сперва (на форме поищите фразу "подключить фреймворк" - много раз обсуждалось), затем подтянуть позицию модуля. Модуль должен быть прикреплен к этой позиции. Если у вас там несколько модулей в позиции, то создайте отдельную и подключите к ней клон модуля. Вывод позиции можно сделать так:
Код
    $doc = JFactory::getDocument();    
    $renderer = $doc->loadRenderer('modules');
    $options = array('style' => 'raw');
    $position = 'имя_позиции_модуля';
    echo $renderer->render($position, $options, null);
или так:
Код
echo JHtml::_('content.prepare', "{loadposition имя_позиции_модуля}");
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

timofe

  • Захожу иногда
  • 148
  • 0 / 0
  • alex tim.
Re: Вывести модуль в iframe
« Ответ #2 : 08.12.2020, 17:15:18 »
Спасибо!
Победа произошла так:

В корне сайта файл "iframe.php"
В нем:

<?php
define('_JEXEC', 1);
define('JPATH_BASE', $_SERVER['DOCUMENT_ROOT'] );
define('DS', DIRECTORY_SEPARATOR);
require_once(JPATH_BASE.DS.'includes'.DS.'defines.php');
require_once(JPATH_BASE.DS.'includes'.DS.'framework.php');
$app = JFactory::getApplication('site');
$app->initialise();
?>

<?php
$doc = JFactory::getDocument();   
    $renderer = $doc->loadRenderer('modules');
    $options = array('style' => 'none');
    $position = 'iframe';
    echo $renderer->render($position, $options, null);
?>


-----
Проверил, так же работает и не в корне сайта
« Последнее редактирование: 08.12.2020, 17:31:56 от timofe »
*

rsn

  • Давно я тут
  • 520
  • 34 / 3
Re: Вывести модуль в iframe
« Ответ #3 : 08.12.2020, 18:51:05 »
В своем пхп-скрипте подключить фреймворк сперва (на форме поищите фразу "подключить фреймворк" - много раз обсуждалось), затем подтянуть позицию модуля. Модуль должен быть прикреплен к этой позиции. Если у вас там несколько модулей в позиции, то создайте отдельную и подключите к ней клон модуля. Вывод позиции можно сделать так:
Код
    $doc = JFactory::getDocument();    
    $renderer = $doc->loadRenderer('modules');
    $options = array('style' => 'raw');
    $position = 'имя_позиции_модуля';
    echo $renderer->render($position, $options, null);
или так:
Код
echo JHtml::_('content.prepare', "{loadposition имя_позиции_модуля}");

Хорошее решение! @sivers, а с выводом конкретного модуля - наверняка же тоже есть вариант?
Сам не сталкивался, просто интересно. Есть мысли применить это в будущем.
Возможно, будет интересно: Интеграция с Ozon
*

sivers

  • Живу я здесь
  • 2494
  • 339 / 0
Re: Вывести модуль в iframe
« Ответ #4 : 08.12.2020, 23:20:27 »
а с выводом конкретного модуля - наверняка же тоже есть вариант?
Искал такой вариант как-то. Нашёл как тянуть модуль по его заголовку. Но это показалось неудобным. А вот как дергать по ИД - не нашёл простого способа. В итоге пользуюсь рендерингом позиции.

Кстати, при подключении фреймворка в своём скрипте инициализацию вроде бы делать не обязательно (последняя строчка).
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

rsn

  • Давно я тут
  • 520
  • 34 / 3
Re: Вывести модуль в iframe
« Ответ #5 : 09.12.2020, 07:25:18 »
Понял, спасибо, что поделились @sivers.
Возможно, будет интересно: Интеграция с Ozon
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как вставить модуль в код нужной страницы php?

Автор zvi

Ответов: 9
Просмотров: 4056
Последний ответ 21.02.2024, 11:03:08
от saynez
Убрать из модуля новостей ссылку на статью, на которой выводится модуль

Автор zeus07

Ответов: 3
Просмотров: 779
Последний ответ 08.11.2023, 21:17:26
от GrayAn
Модуль Похожие метки – только более ранние статьи!

Автор Gerostrat

Ответов: 6
Просмотров: 513
Последний ответ 24.08.2023, 21:56:09
от sivers
Модуль для опросов Advanced Poll не работает

Автор Escander

Ответов: 15
Просмотров: 1497
Последний ответ 02.06.2023, 20:10:22
от kzalmatuy1
Один модуль влияет на другой, как?

Автор mag_num83

Ответов: 5
Просмотров: 559
Последний ответ 17.05.2023, 10:05:55
от sivers