Новости Joomla

Рендер пользовательского поля внутри другого пользовательского поля. Joomla 5.3

Писал ранее о том, как внутри одного пользовательского поля рендерить другое пользовательское поле. Применил для этого возможность Joomla обращаться к методам плагинов напрямую. Процитирую строчку кода из предыдущего поста:

<?php
$joomlaFieldContentPlugn->onContentPrepare('com_content.article', $fakeItem, $app->getParams());

Joomla постепенно переходит от простого указания аргументов для триггеров плагинов к собственным классам событий. Это позволяет не запоминать порядок передачи аргументов класса и использовать человекопонятные методы $event->getContext(), $event->getItem() и т.д. А то в одном месте в Joomla было $article, в другом - $item, в третьем ещё как-то... Порядку больше становится.

Сегодня обновил сайт клиентов до Joomla 5.3. В ней обновили контент-плагин fields и мой финт ушами с вызовом метода плагина отвалился потому, что я передавал в нём 3 аргумента, вместо одного. И для события onContentPrepare это должен быть объект класса ContentPrepareEvent. Как меняется фрагмент кода из предыдущего поста:

<?php
// мы находимся в файле макета поля

use Joomla\CMS\Event\Content\ContentPrepareEvent;
use Joomla\CMS\Factory;

$app = Factory::getApplication();
$fakeItem = new \stdClass();
// Получаем id текущего материала из объекта Input
$fakeItem->id = $app->getInput()->getInt('id');
// {field 29} - это шорт код вставки поля с id 29 - "ассортимент проекта"
// к содержимому поля конкатенируем шорт-код для обработки
$fakeItem->text = $field->value . '{field 29}';
// Получаем объект плагина
$joomlaFieldContentPlugn = $app->bootPLugin('fields', 'content');
// вызываем метод обработки напрямую
// вместо 3-х аргументов теперь указываем один
// это объект класса ContentPrepareEvent
$joomlaFieldContentPlugn->onContentPrepare(new ContentPrepareEvent('onContentPrepare', [
            'context' => 'com_content.article',
            'subject' => $fakeItem,
            'params'  => $app->getParams(),
            'page'    => 0,
        ]));
// выводим оба поля
echo $fakeItem->text;

@webtolkru 

Вышел релиз Joomla 5.3.0

Вышел релиз Joomla 5.3.0

Проект Joomla с радостью объявляет о выходе Joomla 5.3 — последней минорной версии в серии Joomla 5.

Этот релиз сосредоточен на продуманных улучшениях, которые совершенствуют работу с CMS. От лучшей организации файлов и журналирования задач до расширенной обработки электронной почты и улучшенной доступности — Joomla 5.3 помогает администраторам и разработчикам работать более эффективно, сохраняя ваш сайт современным, безопасным и готовым к будущему.

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

костикTITS

  • Осваиваюсь на форуме
  • 16
  • 2 / 0
поддомены OpenSEF, cookies и Opera
« : 02.07.2006, 22:08:29 »
Не работает авторизация при переходе с главного домена на созданные поддомены, т.е. захожу на главном сайте, при переходе на поддомен, авторизация теряется.
Так же пользователь не может авторизироваться будучи на поддомене.
Причём всё это справедливо для Оперы (как 8.50, так и 9.0), а в ИЕ (Макстон) всё работает замечательно.
Полагаю, что-то с кукисами. Что? Где посмотреть и что исправить?

Спасибо!
*

userxp

  • Moderator
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: поддомены OpenSEF, cookies и Opera
« Ответ #1 : 03.07.2006, 11:14:08 »
это лучше отпиши на родном форуме
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
*

костикTITS

  • Осваиваюсь на форуме
  • 16
  • 2 / 0
Re: поддомены OpenSEF, cookies и Opera
« Ответ #2 : 03.07.2006, 12:29:06 »
На родном форуме чего, Оперы или Опенсефа?
*

userxp

  • Moderator
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: поддомены OpenSEF, cookies и Opera
« Ответ #3 : 03.07.2006, 12:54:33 »
опенсефа конечно.
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Плагин OpenSEF для VirtueMart

Автор userxp

Ответов: 203
Просмотров: 133583
Последний ответ 21.03.2012, 16:34:27
от Businessman
Как установить OpenSef

Автор benladen

Ответов: 7
Просмотров: 12133
Последний ответ 14.02.2012, 12:16:50
от jade
OpenSef - не получается настроить

Автор Tonik1

Ответов: 117
Просмотров: 88842
Последний ответ 24.04.2010, 14:17:15
от yevrowl
Глючат пункты меню из-за OpenSEF 2.0.0-RC5_SP2

Автор vlaad

Ответов: 2
Просмотров: 8532
Последний ответ 12.11.2009, 00:49:14
от soulfly
OpenSEF 2.0.0 RC5\joostina 1.2 не дает сделать авторизацию

Автор romans13

Ответов: 2
Просмотров: 7701
Последний ответ 19.10.2009, 23:14:20
от romans13