Вчера в систему обновлений вышло обновление модуля "Управление структурой" 8.0.4.
Помимо долгожданного исправления ряда ошибок, связанных с редактированием параметров компонентов, там появилась новая, можно сказать революционная штуковина: возможность рендеринга компонентов сразу в редакторе.
Ранее рендеринг компонентов можно было видеть в продукте для ASP.NET платфоры. А теперь этот функционал доступен и на PHP-версии. Пока, правда, в бета-версии.
[spoiler]
Как включить?
В настройках модуля "Управление структурой", на вкладке визуальный редактор нужно поставить птичку: Разрешить предварительный просмотр компонентов в визуальном редакторе.
По умолчанию, опция отключена, т.к. технология новая, и не все штатные компоненты пока красиво отображаются.
После включения опции - все компоненты будут рендериться.
Но каждый пользователь может выключить/включить рендеринг персонально для себя (в настройках визуального редактора, на вкладке "Дополнительно").
Особенности рендеринга
Главное ограничение - при построении предпросмотра компонента Javascript не исполняется.
Зато вот все файлы стилей, подключаемые компонентом - исправно подгружаются (сейчас существует проблема с относительными путями к картинкам в CSS, но ее мы скоро решим).
При построении компонента ему передается служебный параметр BX_EDITOR_RENDER_MODE="Y" - так компонент может "узнать", что его дергают из редактора и показать другой контент, например скриншот;)
Если компонент не вернул вообще ничего, то вместо рендеренной области - нарисуется его иконка.
Как работать?
Рендеренный компонент можно перетаскивать за область слева от названия. Его можно выделять: кликните по нем. Внизу подсветятся свойства. Если кликнуть дважды - в диалоговом окне откроются свойства. Ну и конечно же, его можно - удалять!
Ну вот и все. Сказал, что хотел:) Вдруг, кто-то не читает описания обновлений
Напоследок приведу еще пару скиншотов:
Удачи всем!
Продолжается развитие концепции визуального управления сайтом.
Теперь компоненты не просто кубиками будут на странице, а реально пользователи будут видеть, что положили и какие параметры выбрали.
Ура, спасибо, Дима!
Вопрос был совсем о другом:
Одна из мегаштук битрикс - это период активности новости. Мы можем написать новость сегодня, уехать в командировку, и она появится в нужное время в нужном месте. Круто!
Но! Для того, чтобы увидеть, как новость будет выглядеть, её - о ужас - нужно сделать активной хоть на чуть-чуть и посмотреть.... Иначе начальство не утвердит, да и сам не увидишь.
Как быть в такой ситуации - непонятно.
Пока вариант - делать скрытую страницу и на ней тестить....
P.S. кстати в блогах тоже нет предпросмотра. Что написал - непонятно...
Ответ мой относился как раз к "можно ли будет увидеть новость, не делая ее активной", я имел ввиду, что достаточно установить фильтр компонента в указанное мной значение, чтобы стали видны неактивные новости. Но спрашивалось, как я сейчас уже понял, совсем не об этом
По существу же вопроса ничего нового для вас сказать не могу, мы используем для предпросмотра скрытую страницу.
Если в компоненте news.list есть array_merge($arFilter, $arrFilter) в вызове CIBlockElement::GetList, то в компоненте news.detail такого нет. А следовательно, придется-таки кастомизировать news.detail.
Так что arrFilter можно использовать только с news.list. Главное сделать так, чтобы любой новый программист мог догадаться что для одного компонента суть в параметрах вызова, для другого - в коде компонента. Поэтому я и предложил сразу оба кастомизировать, но вообще дело вкуса скорее.
Для предварительного просмотра любой новости админ или контент-менеджер будет указывать в начале активности дату будущего.
Но нужно помнить, что просмотра "ACTIVE"=>"N" без кастомизации news.detail добиться невозможно (вдруг у кого будут не новости, а другие данные в которых даты вообще не используются).
Что Вы можете сказать о представленной фиче? Понравилось, не понравилось? Что удобно, что нет?
Господа пользователи, бойтесь будущего!