PDA

Просмотр полной версии : Fluidcontent_core


salah
20.06.2015, 01:55
Столкнулся с новыми требованиями со стороны немецких заказчиков по Typo3 - никакой templavoila, и желательно fluidcontent_core вместо cssstyledcontent (csc).
Последнюю не взлюбил еще в 2005 году, когда впервые начал работать с тайпой. Например, нужно разместить фотогаллерею со своей структурой html, а вместо этого получаешь миллиард div'ов, которые создают такую дикую структуру, что верстальщики при доделках либо получали инфаркт либо бросали свое дело и шли на завод токарем.
fluidcontent_core призван заменить csc. Но я потратил уже несколько дней на его глубокое изучение и никак не могу разобраться в нюансах. Обучения толкового нет. Все что есть в интернетах это официальный мэнуал по fluid - https://fluidtypo3.org/documentation/templating-manual/introduction.html, а также видео уроки разработчика fluidcontent_core Claus Due - https://vimeo.com/user20720051.
Что бы вы не устанавливали, как бы точно не повторяли уроки автора, один фиг ничего не получится. Да, простой контент вы заставите появляться, но ПОЧЕМУ-ТО такие вещи как контейнер для контент элементов, в который можно запихнуть другие элементы, никогда не появятся в вашем frontend'е. Не понятно почему. На форумах понаходил несколько других более узких рекомендаций/уроков как настроить fluidcontent_core - например, добавить introduction package (доступны из extension manager в бакенде), например bootstrap - все окей, очень здорово сделаны FCE завязанные на bootstrap, но блин, добавляешь например кнопку - а во фронтенде ее нет, добавляешь контейнер для элементов - то же самое, добавляешь carousel (убогое, кстати творение, можно было сделать куда проще, особенно, если вам надо загрузить в нее штук 10-15 картинок) - тоже не отображается. Ни ошибок, ни ругани, ничего. Просто нет. Пересматриваешь уроки и мэнуалы - все сделал правильно. Пробуешь не на версии 7.3, а специально устанавливаешь Typo3 6.2.13 - то же самое.
Вот создали CSC, создали Templavoila, и во всех версиях тайпы принципы были одними и теми же - логика действий одна и та же - никогда никакого полтергейста. Теперь же в TV больше поддерживать не будут, значит надо срочно осваивать fluid, и желательно без CSC, а ни толковых туториалов, ни работоспособных примеров нет.
Сделано ли это намерено, чтобы проредить массу разработчиков в монопольных целях, или без Каспера как без Стива Джобса начинается анархия и сплошные баги, я не знаю...
Но обижаешься в первую очередь на себя, что все сделал правильно, а нифуя не работает как положено.

Отсюда вопрос - кто плотно работает с fluidcontent_core вместо cssstyledcontent (csc) - выделали для себя сами свои контент элементы? Если да и у вас все в поряде - спасите мою угасающую любовь к тайпе - дайте о себе знать или здесь или в скайп - salakhoutdinov... Обещаю не занудствовать, только конкретика.

Всё )

agmike
24.06.2015, 18:43
Да вроде нет там ничего сложного.
А вы в шаблоне, случайно, не забыли все нужные компоненты подключить?)

Вообще, начинал так: берешь уже сделанный кем-то элемент контента (из того же бутстрапа, к примеру) и разбираешься в нем, потом меняешь на своё.
Вся документация тут https://fluidtypo3.org/viewhelpers.html
И еще помогает <f:debug>

salah
24.06.2015, 18:47
Спасибо за ответ. Дело в том, что стандартные элементы работают. Но когда я пытаюсь сделать например контейнер для контент элементов как в примерах, то в бакенде в него спокойно вставляются другие элементы, а во фронтенде этой конструкции не видно

agmike
24.06.2015, 18:56
Можете код показать?

Ивано++
24.06.2015, 22:24
По поводу Fluid - думаю что Вам нужно связываться и пробовать консультироваться у Вадима Гиркало - http://www.gyrkalo.dp.ua/. Он судя по тем проектам, что видел еще в 2014 или 13 годах очень хорошо разбирается в данной тематике.

У меня с Fluid был опыт работы на одном проекте - но после решил отказаться от этого двигателя. Extbase не нашел применения (его понимают только сами разработчики наверное).

--
Посмотрел - уже многие переходят на 6.2 и 7. С точки зрения работы с данными ветками - это более сложные системы и более требовательные. Мне в них понравилось только одно нововведение - что для меню HMENU можно добавлять условие на выборку страниц. В остальном в них ничего нового для себя не нашел.

Manas
05.07.2015, 00:01
У меня с Fluid был опыт работы на одном проекте - но после решил отказаться от этого двигателя. Extbase не нашел применения (его понимают только сами разработчики наверное).

Давно сюда не заходил... Я например отказался от Templavoila в сторону Fluid еще с ветки 4.5. Посмотроите хотя бы вот это http://thomas.deuling.org/2011/06/create-a-complete-typo3-website-by-using-the-fluid-template-engine/ Суть одна, не менялась. То, что вы мапили в темлавойла в качестве TS объекта, здесь вствляете в файле шалона как <f:cObject typoscriptObjectPath="lib.mainNavi" />

Что же касается Extbase, то это вещь крутейшая. Это настойщий MVC фрейморк, и позволяет очень многое. Вот к примеру даже, что-то мини соц. сети на нем сделал http://обращайся.рф/ Так что, только Extbase и только Fluid. В соврменной концепции тайпы, об остальном даже не думайте. ))

Ивано++
06.07.2015, 21:56
Да, показывая рабочий проект на всем этом здесь не поспоришь.

Но вот Вы разобрались в этом, а у меня с этим не получилось разобратся, т.к. на мой взгляд нет документации нормальной (может только для меня). И кстати она есть в TYPO3 - особенно по части Fluid и Extbase). Кроме того желания особо большого разбираться нет, читая Вашу тему про манию все менять.

Возмите CMS Contao - у них с документацией изначально все было гуд и остается в 1 месте. И кстати зашел - даже сайт обновили - https://contao.org/en/.:)

Manas
06.07.2015, 23:19
Андрей Аксёнов делал перевод книги. У меня есть pdf, могу скинуть. Хоть и много чего изменилось, но концепция остается прежней. Плюс имеет смысл смореть некторые расширения из репозитария, "учиться" по ним.
Ну а насчет мании всё менять, то увы, приходится мириться. Не знаю как с этим обстоит дело в других системах...
З.Ы. Иван, нас и так мало, изучай extbase )))

salah
29.07.2015, 00:22
Андрей Аксёнов делал перевод книги. У меня есть pdf, могу скинуть. Хоть и много чего изменилось, но концепция остается прежней.

А можно мне эту книгу на email?

Manas
29.07.2015, 13:12
Отправил вам по почте.

salah
30.07.2015, 00:36
Дмитрий, спасибо огромное.

В общем, этот глюк у меня заключался в неправильной установке fluidcontent_core - она не добавляла AdditionalConfiguration.php в /typo3conf.
Если кому пригодится на будущее, лежит этот файлик в папке /typo3conf/ext/fluidcontent_core/Resources/Private/Configuration/

webberry
26.08.2015, 11:21
Спасибо за ответ. Дело в том, что стандартные элементы работают. Но когда я пытаюсь сделать например контейнер для контент элементов как в примерах, то в бакенде в него спокойно вставляются другие элементы, а во фронтенде этой конструкции не видно

Думаю проблема в вызове. Чтобы fluid рендерил обекты внутри себя надо сделать что-то типа:

<div xmlns="http://www.w3.org/1999/xhtml" lang="en"
xmlns:v="http://typo3.org/ns/FluidTYPO3/Vhs/ViewHelpers"
xmlns:flux="http://typo3.org/ns/FluidTYPO3/Flux/ViewHelpers"
xmlns:f="http://typo3.org/ns/TYPO3/Fluid/ViewHelpers">

<f:layout name="Content" />
<f:section name="Configuration">
<flux:form id="wraper">

<flux:form.content name="content" />
<flux:form.sheet name="options">
<flux:field.input name="css_class" />
</flux:form.sheet>
</flux:form>
</f:section>

<f:section name="Preview">
<flux:widget.grid />
</f:section>

<f:section name="Main">
<flux:content.render area="content" />
</f:section>
</div>

Советую вот этот набор https://github.com/bootstraptheme-for-typo3/fluidbootstraptheme. Можно просто установить на чистую Typo3 и посмотреть как что работает. очень эффективно.

Ивано++
26.08.2015, 12:11
Думаю проблема в вызове. Чтобы fluid рендерил обекты внутри себя надо сделать что-то типа:

<div xmlns="http://www.w3.org/1999/xhtml" lang="en"
xmlns:v="http://typo3.org/ns/FluidTYPO3/Vhs/ViewHelpers"
xmlns:flux="http://typo3.org/ns/FluidTYPO3/Flux/ViewHelpers"
xmlns:f="http://typo3.org/ns/TYPO3/Fluid/ViewHelpers">

<f:layout name="Content" />
<f:section name="Configuration">
<flux:form id="wraper">

<flux:form.content name="content" />
<flux:form.sheet name="options">
<flux:field.input name="css_class" />
</flux:form.sheet>
</flux:form>
</f:section>

<f:section name="Preview">
<flux:widget.grid />
</f:section>

<f:section name="Main">
<flux:content.render area="content" />
</f:section>
</div>

Советую вот этот набор https://github.com/bootstraptheme-for-typo3/fluidbootstraptheme. Можно просто установить на чистую Typo3 и посмотреть как что работает. очень эффективно.

Возьму на заметку - интересно поизучать будет.
Сейчас думаю что и на 6.2. уже буду переходить в перспективе.

Николай Сипко
26.08.2015, 23:37
Думаю проблема в вызове. Чтобы fluid рендерил обекты внутри себя надо сделать что-то типа:

xmlns="http://www.w3.org/1999/xhtml" lang="en"
xmlns:v="http://typo3.org/ns/FluidTYPO3/Vhs/ViewHelpers"
xmlns:flux="http://typo3.org/ns/FluidTYPO3/Flux/ViewHelpers"
xmlns:f="http://typo3.org/ns/TYPO3/Fluid/ViewHelpers">

Ссылки как в https://fluidtypo3.org/documentation/templating-manual/templating/creating-templates/page-template.html
Пробовал по ним пройти. Получил:
Not Found
The requested URL /ns/FluidTYPO3/Flux/ViewHelpers was not found on this server.
Apache/2.2.16 (Debian) Server at typo3.org Port 80
Vhs и Flux в репозитории и без них fluidcontent_core не установить.
========
Прошу пояснить и заранее извинить за невежество:
=======
1. Fluid content template file
http://typo3buddy.com/typo3-template-tutorial/fluid/content-template/
=======
<div id="content">
<div id="content_menu">
<f:cObject typoscriptObjectPath="lib.content_menu" />
</div>
<div id="content_main">
<f:format.raw>{content_main}</f:format.raw>
</div>
<div class="clearer"></div>
</div>
=======
2. Fluid/HTML Template
https://stmllr.net/blog/automaketemplate-is-dead-long-live-fluidtemplate/
=======
<div id="wrap">
<div id="menu">
<f:cObject typoscriptObjectPath="lib.navigation" />
</div>
<div id="left">
<f:format.html parseFuncTSPath="lib.parseFunc">{left}</f:format.html>
</div>
<div id="content">
<f:format.html parseFuncTSPath="lib.parseFunc">{content}</f:format.html>
</div>
<div id="right">
<f:format.html parseFuncTSPath="lib.parseFunc">{right}</f:format.html>
</div>
</div>
=======
В одном <f:format.raw>{content_main}</f:format.raw>
В другом <f:format.html parseFuncTSPath="lib.parseFunc">{left}</f:format.html>
=======
Как правильно делать ContentObjectRenderer? С разметкой в templavoila не сравнить, здесь как "закат солнца вручную". И зря ее хоронят: https://typo3.org/extensions/repository/?id=23&L=0&q=templavoila Compatibility 7.0.0 - 7.9.99

salah
27.08.2015, 00:00
Во-первых, не пользуйтесь typo3buddy.com в качестве референса. Я на этом месяц потерял. Информация устарела и не актуальна.

Вместо этого сделайте следующее:
1. Установите fluidcontent_core
2. Установите fluidpages и fluidcontent
3. Установите builder
4. В builder сделайте свой экстеншен для темплейтинга
5. В экстеншен менеджере активируйте свой экстеншен
6. Сделайте в Web->Template новый шаблон и включите в него fluidcontent_core и свой экстеншен
7. Задайте главной странице макет из вашего экстеншена.
8. Все!

Теперь дело за малым - набивать руку на шаблоне страницы и тестового контента в EXT:Resources/Private/Templates/Page и EXT:Resources/Private/Templates/Content. Если будете делать новую страницу или контент элемент, то создавайте для них новый файл рядом с тестовым, но не забывайте про заглавную букву в имени файла, иначе по правилам Extbase он не будет распознан.

Со временем изучите как работают стандартные CE в fluidcontent_core, но учтите, что они пользуются своими Partials (отдельные файлы для рендеринга повторяющихся блоков).

В принципе это все, что нужно знать для начала пользования fluid на базе fluidcontent_core.

Учитесь, потому что в LTS (стабильной) версии Typo3 7 css styled content уже не будет. Как и Templavoila.

FLUID рулит! Я уже наблатыкался достаточно, чтобы решать на нем любые проблемы. Обращайтесь!

Документация на http://fluidtypo3.org достаточная, но имхо сделана специально неудобоваримой, чтобы оставить работу узкому кругу специалистов в Германии.


Ссылки как в В одном <f:format.raw>{content_main}</f:format.raw>
В другом <f:format.html parseFuncTSPath="lib.parseFunc">{left}</f:format.html>
=======
Как правильно делать ContentObjectRenderer?

Сделать можно и так и так. В одном случае тэги убираются, в другом нет. Вот и все отличие. <f:format> можно вообще не пользоваться.
Если нужно вывести переменную TypoScript, то воспользуйтесь этим примером:
<f:cObject typoscriptObjectPath="lib.social" />

Николай Сипко
27.08.2015, 00:21
Учитесь, потому что в LTS (стабильной) версии Typo3 7 css styled content уже не будет. Как и Templavoila.
=======
Учиться, учиться и учиться лучше, чем работать, работать и работать.
Но откуда такая уверенность про Templavoila, которая Compatibility 7.0.0 - 7.9.99?

Если нужно вывести переменную TypoScript, то воспользуйтесь этим примером:
<f:cObject typoscriptObjectPath="lib.social" />
=======
typoscriptObject и <f:format.html parseFuncTSPath="lib.parseFunc">{right}</f:format.html> разные по смыслу. С typoscriptObjectPath понятно, непонятно с ContentObjectRenderer: в TYPO3 их, по-моему, три типа.

А за советы спасибо. Осваивать FLUIDTEMPLATE нужно, но что "FLUID рулит!" не испытываю особого интузиазма. И за typo3buddy.com немного обидно: кто может сделать лучше, пусть сделает.

salah
27.08.2015, 00:24
Но откуда такая уверенность про Templavoila, которая Compatibility 7.0.0 - 7.9.99?

Это открытая информация на typo3.org.


typoscriptObject и <f:format.html parseFuncTSPath="lib.parseFunc">{right}</f:format.html> разные по смыслу. С typoscriptObjectPath понятно, непонятно с ContentObjectRenderer: в TYPO3 их, по-моему, три типа.

Поясните, какая стоит задача, постараюсь подсказать как ее решить.

Николай Сипко
27.08.2015, 00:32
Это открытая информация на typo3.org.
=======
Что за информация, подскажите, пожалуйста, URL.

salah
27.08.2015, 00:39
Что за информация, подскажите, пожалуйста, URL.
Сразу не могу найти. А искать адресно лень. недавно переписывался по устранению проблем в BE с разработчиками тайпы на forge.typo3.org, и последнее подтверждение получил именно там.

Не суть. Экстеншен CSC работать будет. Но как и TemplaVoila не будет развиваться и обновляться, т.е. будет отсутствовать LTS (Long Term Support).

fluidcontent_core в отличии от CSC дает возможность пользоваться базовыми функциями с возможностью расширения. В то время как CSC выплевывает по-умолчанию все нужное и не нужное, и от администратора требуется отключать лишнее.

Николай Сипко
27.08.2015, 00:50
Вопрос из чистого любопытства.
Что такое "экстеншен CSC"?

salah
27.08.2015, 00:51
Вопрос из чистого любопытства.
Что такое "экстеншен CSC"?

Вы меня удивляете. CSC это css_styled_content

Николай Сипко
27.08.2015, 01:02
А я уже ничему не удивляюсь:
Nothing found for "CSC".
Showing results for "". Search instead for "CSC".

salah
27.08.2015, 01:04
А я уже ничему не удивляюсь:
Nothing found for "CSC".
Showing results for "". Search instead for "CSC".

csc-... - самый частовстречаемый класс в коде html при использовании css_styled_content.

Мы отошли от темы. У вас был вопрос по:
<f:format.html parseFuncTSPath="lib.parseFunc">{right}</f:format.html>

Какая цель?

salah
27.08.2015, 01:13
Короче, я так понял, что вы не можете вывести контент в принципе.
Воспользуйтесь перечисленными шагами, вместо советов с typo3buddy.
Тогда в вашем созданном экстеншене будет файл Default.html, содержащий простой пример рендеринга контента.

Или воспользуйтесь этим простым примером:
<div xmlns="http://www.w3.org/1999/xhtml" lang="en" xmlns:f="http://typo3.org/ns/TYPO3/Fluid/ViewHelpers" xmlns:v="http://typo3.org/ns/FluidTYPO3/Vhs/ViewHelpers" xmlns:flux="http://typo3.org/ns/FluidTYPO3/Flux/ViewHelpers">

<f:layout name="Page" />

<f:section name="Configuration">
<flux:form id="standard">
<!-- Insert fields, sheets, grid, form section objects etc. here, in this flux:form tag -->
</flux:form>
<flux:grid>
<!-- Edit this grid to change the "backend layout" structure -->
<flux:grid.row>
<flux:grid.column colPos="0" name="main" label="Основной контент" />
</flux:grid.row>
</flux:grid>
</f:section>

<f:section name="Main">
<v:content.render column="0" />
</f:section>
</div>

Николай Сипко
27.08.2015, 01:20
Короче, я так понял, что вы не можете вывести контент в принципе.
Короче, я вывожу контент "в принципе". У меня больше нет вопросов. А за советы спасибо.

salah
27.08.2015, 01:21
Короче, я вывожу контент "в принципе". У меня больше нет вопросов. А за советы спасибо.

Просто хотел помочь...

webberry
27.08.2015, 12:31
Просто хотел помочь...

Нормально помог. Все вместо меня расказал
А css_styled_content я в TYPO3 6.x не хороню а использую на ряду с fluid. Через ts перепишу враперы которые нужны вот тебе адаптивные картинки с кучей настроек, блоки текста и прочее. Враперы убираю через тот же tsconfig (layout), чтобы было "безшовно" как было сказано.

TCAdefaults.tt_content.section_frame = 100
TCEFORM.tt_content.section_frame {
addItems {
100 = Clean frame
}
}


и в setup.ts добавляю

tt_content.stdWrap.innerWrap.cObject = CASE
tt_content.stdWrap.innerWrap.cObject {
100 = TEXT
100.value = |
100.stdWrap.dataWrap = |
}

Николай Сипко
28.08.2015, 13:42
https://docs.typo3.org/typo3cms/extensions/fluidcontent_core/

"Special note about the Textpic (Text with Images) content type

As you may have already noticed, there is no template shipped for the TYPO3 core content type Textpic (Text with Images). The reason for this is as simple as it is opinionated: this particular content element type requires an inordinate amount of settings and rendering instructions to serve just the most common use cases. This is also evident in the TypoScript setup that is shipped with CSS Styled Content - the setup required to manage positioning and flow of images and text is so massive that in most sites you use only a fraction of the settings.

A decision was therefore made to simply not ship any template for this content type at all, as to not invite the inevitable explosion in complexity that happened in CSS Styled Content.

Our alternative recommendation is to create container elements which control the structure into which you then insert regular Text and Image elements. The result being more elements, but a much clearer separation of the types (which is useful for example in the context of site search with content type facets). You can of course also go one step further and create your own custom elements which use your own custom fields to define the text and image(s) which you render in a completely custom way".

=======

"Все это было бы смешно,
Когда бы не было так грустно..."

salah
28.08.2015, 15:33
Мне одному кажется что в этой ветке каждый говорит о своем? ))

Николай Сипко
28.08.2015, 16:12
Мне одному кажется что в этой ветке каждый говорит о своем? ))

Поговорим о TYPO3: прошу назвать хоть одно преимущество FLUIDTEMPLATE над templavoila.

css_styled_content
fluidcontent_core
Что лучше и почему?

salah
28.08.2015, 16:15
Скорость посадки шаблона на cms. Гибкость настроек. ТВ изначально создавалась как расширение для коммерческого проекта, и поэтому перегружена не нужными вещами типа записей DS , TO.
Как можно попользовавшись успешно FLUID желать вернуться к TV?

Николай Сипко
28.08.2015, 16:34
Скорость посадки шаблона на cms. Гибкость настроек. ТВ изначально создавалась как расширение для коммерческого проекта, и поэтому перегружена не нужными вещами типа записей DS , TO.
Как можно попользовавшись успешно FLUID желать вернуться к TV?

Приятной работы!