Russian TYPO3 community

Russian TYPO3 community (http://forum.typo3.ru/index.php)
-   HTMLArea, RTE, tinymce_rte и другие визуальные редакторы (http://forum.typo3.ru/forumdisplay.php?f=24)
-   -   Замечательный плугин Dynamiccss - готовый рецепт (http://forum.typo3.ru/showthread.php?t=1491)

Дылгеров Ц.В. 06.06.2006 05:01

Замечательный плугин Dynamiccss - готовый рецепт
 
Что делать если вы хотите чтобы юзвери оформляли таблицы, параграфы и символы и еще кое-что в HTMLArea согласно выбранным стилям?

Весь день на работе мучался с применением стилей в "Свойствах таблицы". Пытался все это сделать при помощи шаблонов - команды RTE.default { classesTable = my_style }. Так и ничего не получилось. На maillist нашел неотвеченный тред по этому поводу.

Сидя вечером дома я ковырял на своем стареньком Celeron900 и допер - очень просто - надо изменить файл "C:\Program Files\typo3\htdocs\typo3_40\typo3\sysext\rtehtmlar ea\htmlarea\plugins\DynamicCSS\dynamiccss.css"

Добавив стиль в этот файл, происходят две вещи - этот стиль появляется в class selector стилей и после выбора этот стиль применяется в RTE - чтобы он проявился в FE надо просто продублировать его.

Соответсвенно если у вас typo3-3.8, то надо искать в typo3conf

Pavel Antonov 06.06.2006 12:52

А если еще прочитать документацию то станет ясно, что ничего ковырять не нужно!

Есть параметры TSConfig которые позволяют подключить свой CSS для RTE, подключать классы к селекторам и много еще чего!

Пример:
Код:

RTE.default.proc.allowedClasses := addToList(hidden-link, more-link,client_person,client_title)
RTE.default.classesAnchor := addToList(hidden-link, more-link)
RTE.default.classesAnchor.default >
RTE.default.classesLinks := addToList(hidden-link, more-link)
RTE.default.classesParagraph := addToList(client_person, client_title, some)
# RTE.default.inlineStyle.client := addToList(p.client_person {text-align: right;} p.client_title {text-align: right;} )
RTE.default.ignoreMainStyleOverride = 0
RTE.default.useCSS = 1
RTE.default.contentCSS = fileadmin/rte.css


Дылгеров Ц.В. 06.06.2006 13:36

хороший шаблон - тут я пас - использование :=addToList просто находка

Цитата:

Сообщение от Pavel Antonov
А если еще прочитать документацию то станет ясно, что ничего ковырять не нужно!

Есть параметры TSConfig которые позволяют подключить свой CSS для RTE, подключать классы к селекторам и много еще чего!

Пример:
Код:

RTE.default.proc.allowedClasses := addToList(hidden-link, more-link,client_person,client_title)
RTE.default.classesAnchor := addToList(hidden-link, more-link)
RTE.default.classesAnchor.default >
RTE.default.classesLinks := addToList(hidden-link, more-link)
RTE.default.classesParagraph := addToList(client_person, client_title, some)
# RTE.default.inlineStyle.client := addToList(p.client_person {text-align: right;} p.client_title {text-align: right;} )
RTE.default.ignoreMainStyleOverride = 0
RTE.default.useCSS = 1
RTE.default.contentCSS = fileadmin/rte.css


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

Однако для чего то же создали этот плугин? Если нет необходимости прятать стили от других то легче воспользоваться им.

Тем более пользоваться им проще простого - добавляешь стиль в файл и он автоматом парсится.

Pavel Antonov 06.06.2006 14:27

Цитата:

Сообщение от Дылгеров Ц.В.
Однако для чего то же создали этот плугин? Если нет необходимости прятать стили от других то легче воспользоваться им.

Тем более пользоваться им проще простого - добавляешь стиль в файл и он автоматом парсится.

  1. Многие плагины делаются не от ума, а от нечего делать.
  2. Парсинг CSS это встроенная фича HTMLArea. useCSS - это все что нужно.
  3. Лень прописывать где что используется? Есть опция и на этот счет. Будет брать просто все стили описанные в CSS:
    Код:

    RTE.default.showTagFreeClasses = 1
То что Вам нужно делается 3-я строчками:
Код:

RTE.default.useCSS = 1
RTE.default.contentCSS = fileadmin/rte.css
RTE.default.showTagFreeClasses = 1


Pavel Antonov 06.06.2006 14:35

Да кстати, вводите в заблуждение:
DynamicCSS это не плагин Typo3, а плагин HTMLArea...то что я написал и есть его настройки

А патичить такие вещи, тем более что они являются частью ядра - последнее дело!

Дылгеров Ц.В. 07.06.2006 05:40

Как говорил Кержаков - бил, бью и буду бить. Так и хочется сказать - патчил своими кривыми руками, патчу и буду патчить.

Конечно же я против грубых патчей.
За 8 мес. изучения Typo3 использовал два патча - добавил иконки-карандаши FE-редактирования в tt_news. Но это скорее косметика. Буду признателен если подскажете ПРАВИЛЬНОЕ решение - скопирую и вынесу в другой раздел.
Кроме этого добавил каталог в каталоге plugins в RTE HtmlArea. И там тоже происходило добавление.
Пользы от того, что я это придумал, для сообщества никакой - согласен.

В интересах opensource-сообщества присоединяюсь к предыдущему посту: "Не трогайте файл "dynamiccss.css" - он является частью кода.

Pavel Antonov 07.06.2006 14:33

Цитата:

Сообщение от Дылгеров Ц.В.
Как говорил Кержаков - бил, бью и буду бить. Так и хочется сказать - патчил своими кривыми руками, патчу и буду патчить.

Исправляй, но не патч!
Субклассируй, но не правь оригинальный код!

Благо Typo3 позволяет в большенстве случаев подменить классы. Не всегда, к сожелению, но это уже проблемы скорее PHP как такового...

pressdesign 12.03.2010 17:26

Подскажите, а что делать, если такой код не срабатывает
RTE.default.useCSS = 1
RTE.default.contentCSS = fileadmin/rte.css
RTE.default.showTagFreeClasses = 1
Мои подключенные стили видны в RTE, применяются в frontend но при сохранении – слетают!!!


Часовой пояс GMT +4, время: 03:11.

Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot