Новости 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 Ответов
  • 35222 Просмотров
*

Dmitriy

  • Осваиваюсь на форуме
  • 41
  • 2 / 0
Всем привет,
подскажите как изменить фон в поле для ввода текста в визуальном редакторе  ^-^

а то общий фон сайта темный, основной областьи соответственно светлый, а в редакторе в админке темный общий фон

в опере нормально белый (но нет редактора)
в лисе и IE фон темный


заранее спасибо  ^-^
« Последнее редактирование: 23.05.2006, 11:34:15 от userxp »
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Re: Фон визуального редактора
« Ответ #1 : 05.04.2006, 16:18:02 »
а поискать на сайте? вот статья: Как изменить цвет фона в редакторе
*

userxp

  • Живу я здесь
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
Re: Фон визуального редактора
« Ответ #2 : 30.05.2006, 13:38:04 »
JCE Mambot Configuration :: Template CSS classes => No
TinyMCE. Мамбот сайта :: Изменить. Классы CSS => Нет
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3

Re: Фон визуального редактора
« Ответ #3 : 02.06.2006, 21:07:20 »
Мне удалось решить эту проблему таким путем.

1.
Сделать editor_content.css:
body {
   margin: 12px;
   padding: 0px;
   background-color: #FFF;
   background-image: none;
}
и положить его рядом с template_css.css в шаблоне сайта.

2.
В админке в User Manager (у меня англ. версия) выбрал для себя редактор TinyMCE.

3.
В меню Админки в меню Mambots => Site Mambots выбрал TinyMCE WYSIWYG Editor и в его настройках Template CSS classes выставил в "No".

В результате фон в редакторе стал белым и без картинок.

А вот на HTMLArea3XTD это не сказалось. Именно он стоял у меня по умолчанию. А TinyMCE как-то потяжелее и дольше грузится.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Небольшой фикс для кнопки "Редактировать

Автор realovich

Ответов: 0
Просмотров: 17714
Последний ответ 06.02.2007, 17:31:57
от realovich
CSS - практика

Автор raduga

Ответов: 10
Просмотров: 53908
Последний ответ 29.09.2006, 18:04:25
от nestless