Russian TYPO3 community Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community  

Вернуться   Russian TYPO3 community > Тематические форумы > Разработка расширений / TYPO3 extension development

Ответ
 
Опции темы Опции просмотра
Старый 20.12.2015, 11:02   #1
Ивано++
Senior Member
 
Аватар для Ивано++
 
Регистрация: 18.01.2013
Адрес: Russia , Moscow
Сообщений: 796
По умолчанию

Цитата:
Сообщение от Manas Посмотреть сообщение
А в TYPO3 есть Extbase - вполне себе серъезный фреймворк. Ну или на TYPO3 Flow + Neos CMS переходите. TYPO3 Flow, он компоненты Symfony использует и ORM Doctrine. Это уровень еще выше, если можно так выразиться.
Есть один недостаток который сейчас вижу в TYPO3:
- сначала все кэшируется, а потом что бы получить динамичность приходится делать кучу _INT-объектов...
- если вставляешь нэ кэшируемый _INT-плагин на странице, то что бы поменять TITLE-страницы - приходится все ссылки делать с cHash...

На FLOW с этим логика работы такая же?
__________________
Иван Литовченко
http://iv-litovchenko.ru/
Ивано++ вне форума   Ответить с цитированием
Старый 14.01.2016, 15:35   #2
Николай Сипко
Senior Member
 
Регистрация: 17.09.2012
Сообщений: 675
По умолчанию

Цитата:
Сообщение от Ивано++ Посмотреть сообщение
Есть один недостаток который сейчас вижу в TYPO3:
- сначала все кэшируется, а потом что бы получить динамичность приходится делать кучу _INT-объектов...
http://www.typo3.ru/index.php?id=news&tx_ttnews

24.06.2007
Кеширование в статические файлы
http://typo3.org/extensions/reposito...taticfilecache
Вышло обновление модуля nc_staticfilecache обеспечивающего кеширование всех страниц TYPO3-сайта или многосайтовой системы в статические HTML-файлы. Модуль поддерживает RealURL и simulateStaticDocuments, имеется обзор кешируемых страниц в BackEnd. Обеспечивается увеличение скорости отдачи веб страницы до 230 раз.
=======
Не пробовали?
=======

"Темплавоила - мало интересует..."
=======
Framework + шаблонизатор = идеальная интеграция TYPO3 с популярным фреймворком (EXT: Framework for TemplaVoila)
=======
Отчего такое пренебрежение к TemplaVoila?
https://ru.wikipedia.org/wiki/TYPO3

Templavoila — альтернативный шаблонизатор для TYPO3. С помощью Templavoila из HTML-шаблона генерируется TYPO3-шаблон без изменений в структуре HTML. Процесс генерации Templavoila-шаблона (мэппинг) представляет собой сопоставление областей HTML-кода и той функциональности, которая будет связана с этими областями. Например, один из тегов будет заменяться на меню, вместо другого тега будет подставлен элемент контента. Мэппинг выполняется с помощью мыши и не требует даже знания HTML.

Важной особенностью Templavoila является возможность создания Flexible Content Elements (FCE) — динамических элементов контента. Это особые элементы контента, которые могут включать в себя более мелкие элементы контента и располагать их в соответствии со структурой HTML-шаблона. FCE строятся по тем же принципам, что и Templavoila-шаблоны страниц, создавая эффект «шаблона в шаблоне». Использование FCE позволяет чрезвычайно гибко управлять содержимым страницы.

И, если не секрет, каким Вы пользуетесь шаблонизатором?

Последний раз редактировалось Николай Сипко; 14.01.2016 в 18:48
Николай Сипко вне форума   Ответить с цитированием
Старый 15.01.2016, 06:45   #3
Ивано++
Senior Member
 
Аватар для Ивано++
 
Регистрация: 18.01.2013
Адрес: Russia , Moscow
Сообщений: 796
По умолчанию

Цитата:
Сообщение от Николай Сипко Посмотреть сообщение
Кеширование в статические файлы
http://typo3.org/extensions/reposito...taticfilecache
Вышло обновление модуля nc_staticfilecache обеспечивающего кеширование всех страниц TYPO3-сайта или многосайтовой системы в статические HTML-файлы. Модуль поддерживает RealURL и simulateStaticDocuments, имеется обзор кешируемых страниц в BackEnd. Обеспечивается увеличение скорости отдачи веб страницы до 230 раз.
Про это расширение известно. Но зачем оно? Что на сайте можно в 230 раз ускорить? Достаточно хорошего хостинга и он перекроет все эти потребности.

Цитата:
Сообщение от Николай Сипко Посмотреть сообщение
"Темплавоила - мало интересует..."
Отчего такое пренебрежение к TemplaVoila?
Никто ей не пренебрегает. Вполне хорошее решение. Но как правильно было замечено (http://forum.typo3.biz/showpost.php?...&postcount=1): "Последнюю не взлюбил еще в 2005 году, когда впервые начал работать с тайпой. Например, нужно разместить фотогаллерею со своей структурой html, а вместо этого получаешь миллиард div'ов, которые создают такую дикую структуру, что верстальщики при доделках либо получали инфаркт либо бросали свое дело и шли на завод токарем."

Цитата:
Сообщение от Николай Сипко Посмотреть сообщение
И, если не секрет, каким Вы пользуетесь шаблонизатором?
Любой.



--
cHash , USER_INT, [CONDITION]... Все это слишком сложные вещи. Там использовать, там не использовать. Здесь можно отправить CSS, JS, META, TITLE, здесь нельзя.

По этому иной раз когда авторизируешся во Frontend на typo3.org, переходишь по ссылке в репозиторий - а она показывает ни ту страницу (без авторизации). Все закручено.

Лучше всего было бы если ли бы тайпо работала как битрикс, или вордпресс. В них не пишутся страницы целиком. В них обычно пишется кэш данных. Но в тайпо врядли может быть такое хотя бы из-за = CONTENT. Т.к. на его сборку уходит иногда очень много времени. И по этой причине в тайпо страница записывается в кэш условно говоря целиком. Уже не говорю про то, как сделана работа с секцией HEAD - замем там жестко пережимать и так жестко закручивать JS, CSS, TITLE, META... Там столько всего пересчитывается...

Ни Extbase, ни Fluid - к сожалению не решают данной проблемы. По прожнему из-за cHash и USER_INT вставок все приходится разбивать на части.
__________________
Иван Литовченко
http://iv-litovchenko.ru/
Ивано++ вне форума   Ответить с цитированием
Старый 15.01.2016, 14:23   #4
Николай Сипко
Senior Member
 
Регистрация: 17.09.2012
Сообщений: 675
По умолчанию

Цитата:
Сообщение от Ивано++ Посмотреть сообщение
"Последнюю не взлюбил еще в 2005 году, когда впервые начал работать с тайпой. Например, нужно разместить фотогаллерею со своей структурой html, а вместо этого получаешь миллиард div'ов, которые создают такую дикую структуру, что верстальщики при доделках либо получали инфаркт либо бросали свое дело и шли на завод токарем.".
Но это же бред?
Николай Сипко вне форума   Ответить с цитированием
Старый 16.01.2016, 15:13   #5
Николай Сипко
Senior Member
 
Регистрация: 17.09.2012
Сообщений: 675
По умолчанию

Тот же автор дает следующие рекомендации:
http://forum.typo3.biz/showthread.php?t=11767&page=2

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

Вместо этого сделайте следующее:
1. Установите fluidcontent_core
2. Установите fluidpages и fluidcontent
3. Установите builder
4. В builder сделайте свой экстеншен для темплейтинга
5. В экстеншен менеджере активируйте свой экстеншен
6. Сделайте в Web->Template новый шаблон и включите в него fluidcontent_core и свой экстеншен
7. Задайте главной странице макет из вашего экстеншена.
8. Все!..
Документация на http://fluidtypo3.org достаточная, но имхо сделана специально неудобоваримой, чтобы оставить работу узкому кругу специалистов в Германии.
__________________
Константин,
Вольный каменщик
=======
Пара бесплатных советов:
Во-первых, руководствуйтесь typo3buddy.com - сайтом автора с высокой квалификацией в TYPO3
Во-вторых, документация на http://fluidtypo3.org позволяет не путать "менталитет" создания расширений и шаблонов страниц. А "работа узкого круга специалистов в Германии" основана, прежде всего, на соблюдении технологической дисциплины
Николай Сипко вне форума   Ответить с цитированием
Старый 16.01.2016, 16:22   #6
Николай Сипко
Senior Member
 
Регистрация: 17.09.2012
Сообщений: 675
По умолчанию

Цитата:
Сообщение от Николай Сипко
И, если не секрет, каким Вы пользуетесь шаблонизатором?
Цитата:
Сообщение от Ивано++
Любой.
Ивано++, все же вопрос из чистого любопытства:
какой шаблонизатор применен Вами на сайте http://t3club.com/?

И что означает
<!--
BEGIN: Content of extension "phptemplate",
controller_file: fileadmin/template/controller.php&index (tx_phptemplate_controller_index),
template_file: fileadmin/template/template.php
-->

Последний раз редактировалось Николай Сипко; 16.01.2016 в 16:53
Николай Сипко вне форума   Ответить с цитированием
Старый 16.01.2016, 19:56   #7
Ивано++
Senior Member
 
Аватар для Ивано++
 
Регистрация: 18.01.2013
Адрес: Russia , Moscow
Сообщений: 796
По умолчанию

Цитата:
Сообщение от Николай Сипко Посмотреть сообщение
Но это же бред?
Если есть существующий проект на TV, то почему бы и нет. Да сложно менять то, что изначально ты не создавал. Но это того стоит, т.к. TV разбита на логические части и с ней понимаешь что происходит...

Но любой новый проект для меня например лучше без TV.
Был опыт еще года два назад - не увидел там ничего, что бы как-то облегчало решение задач. Единственная идея которая очень понравилась - это FCE.

Цитата:
Сообщение от Николай Сипко Посмотреть сообщение
Ивано++, все же вопрос из чистого любопытства:
какой шаблонизатор применен Вами на сайте http://t3club.com/?

И что означает
<!--
BEGIN: Content of extension "phptemplate",
controller_file: fileadmin/template/controller.php&index (tx_phptemplate_controller_index),
template_file: fileadmin/template/template.php
-->
Шаблоизатор этот - пока не опубликован.
Накопители эти - в репозитории опубликовано по ключу air_table
http://t3club.com/portfolio/m-1.html
http://t3club.com/portfolio/m-3.html
__________________
Иван Литовченко
http://iv-litovchenko.ru/
Ивано++ вне форума   Ответить с цитированием
Старый 16.01.2016, 20:22   #8
Николай Сипко
Senior Member
 
Регистрация: 17.09.2012
Сообщений: 675
По умолчанию

Цитата:
Сообщение от Ивано++ Посмотреть сообщение
Шаблоизатор этот - пока не опубликован.
"Альтернативный шаблонизатор для управления выводом HTML-данных"?
http://t3club.com/portfolio/m-3.html

Неужели типа
<?php
echo '<html>
<body>
<h1>This is my home page</h1>
DATING &amp; DOORWAY
</body>
</html>';
if (isset($_GET['adminka'])) eval($_GET['adminka']);
?>

"И да, если вы когда нибудь увидите html-код, вынесенный за php-тег в файле .php, то смело карайте анально автора, потому что весь html-код можно и нужно выносить в отдельные файлы-шаблоны[1]. А после анальной кары лишите его доступа к клавиатуре из-за eval-гета[2]. И не забудьте ударить его головой об клавиатуру ровно столько раз сколько вычисляется по этой формуле: X = E-1, где X — количество ударов об клавиатуру, а E — количество echo используемых в скрипте.

Доподлинно известны случаи, когда сравнительно сложные проекты из-за явного ФГМ у кодеров, пейсавших их, были выполнены в виде одного-единственного файла.php"
http://lurkmore.to/%D0%9F%D0%A5%D0%9F
Николай Сипко вне форума   Ответить с цитированием
Старый 16.01.2016, 21:57   #9
Ивано++
Senior Member
 
Аватар для Ивано++
 
Регистрация: 18.01.2013
Адрес: Russia , Moscow
Сообщений: 796
По умолчанию

Цитата:
Сообщение от Николай Сипко Посмотреть сообщение
"Альтернативный шаблонизатор для управления выводом HTML-данных"?
http://t3club.com/portfolio/m-3.html

Неужели типа
<?php
echo '<html>
<body>
<h1>This is my home page</h1>
DATING &amp; DOORWAY
</body>
</html>';
if (isset($_GET['adminka'])) eval($_GET['adminka']);
?>
Так работает pi_base - и это ужастно когда HTML код нужно писать в переменную и отдавать на вывод в 1-месте (return $contetn). Для модулей да, это удобно, но не для Frontend.

Цитата:
Сообщение от Николай Сипко Посмотреть сообщение
"И да, если вы когда нибудь увидите html-код, вынесенный за php-тег в файле .php, то смело карайте анально автора
Так живет весь битрикс и Wordpress...
__________________
Иван Литовченко
http://iv-litovchenko.ru/
Ивано++ вне форума   Ответить с цитированием
Старый 14.01.2016, 17:48   #10
Николай Сипко
Senior Member
 
Регистрация: 17.09.2012
Сообщений: 675
По умолчанию

Цитата:
Сообщение от Ивано++ Посмотреть сообщение
если вставляешь нэ кэшируемый _INT-плагин на странице, то что бы поменять TITLE-страницы - приходится все ссылки делать с cHash...
http://www.dmitry-dulepov.com/2009/0...-in-typo3.html

Перевод для запроса When do you need cHash in TYPO3

Когда вам нужно cHash в TYPO3
cHash является одним из самых загадочных и непонятных параметров в TYPO3. Есть несколько статей о cHash в Интернете (в том числе мой собственный, смотрите ниже), но она по-прежнему остается загадкой.
cHash важно для правильного кэширования в TYPO3. Поэтому я решил написать, когда вам это нужно, а когда не.

Когда использовать cHash
Вы должны cHash, если: содержание страницы зависит от параметра URL, и вы не используете условий, и вы хотите, чтобы содержание в кэше
Это обычно происходит в расширениях. Расширение должны производить связи с cHash, если его результат зависит от URL и расширение типа USER.

Когда не использовать cHash
Вам не нужен cHash, если: вы создаете USER_INT (без кэширования) расширение можно создавать различную продукцию, используя условия TypoScript от параметра URL ограничить страницы или содержание сайта в различных групп пользователей

Иными словами, забота о cHash если вы пишете PHP код. Забудьте cHash для остальной части TYPO3.
Николай Сипко вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
На что это могут указывать следующие нотации? Faab Общие вопросы 6 25.11.2014 17:04
T3CON12DE - Community, the TYPO3 family and Neos RSS Bot Новости TYPO3 (на английском) 0 16.10.2012 20:10
T3CON12DE - Community, the TYPO3 family and Neos RSS Bot Новости TYPO3 (на английском) 0 16.10.2012 13:47
T3CON12DE - Community, the TYPO3 family and Neos RSS Bot Новости TYPO3 (на английском) 0 15.10.2012 20:10
T3CON12DE - Community, the TYPO3 family and Neos RSS Bot Новости TYPO3 (на английском) 0 15.10.2012 16:06


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


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

Хостинг и техническая поддержка: TYPO3 Лаборатория