Просмотр полной версии : Typo3 6.0 - будущее настало или нет?
По идее сегодня, она - новая версия, должна выйти (27 число)...
Но что-то ее не видно на typo3.org:p...
Вроде бы написано:
Release of TYPO3 6.0RC1: November, 6th
Release of TYPO3 6.0 final: November, 27th
Уж очень интересно, что там будет нового?
Как оказалось - настало...
http://typo3.org/fileadmin/t3org/images/FM-content/releases/TYPO3_6-0/20121122-TYPO3-6.0-Whats-New.pdf
Я вот обновляюсь с 4.5. При заходе в Upgrade Wizard вылазит ошибка
#1231267498: Invalid cache backend option "cacheTable" for backend of type "TYPO3\CMS\Core\Cache\Backend\Typo3DatabaseBackend" (More information)
InvalidArgumentException thrown in file
T:\domains\kite.xx\typo3\sysext\core\Classes\Cache \Backend\AbstractBackend.php in line 86.
А я вот честно говоря пока не спешу...:)
И не знаю, возможно ли это - с 4-четверочек.
Там localconf.php - поменяли концепцию.
Порадовал новый вид служебных комментариев...
Андрей Аксенов
28.11.2012, 11:46
Да, вчера бегло взглянул на слайды. Но удручает огромный список несовместимых расширений.
Вроде бы и нововведений много, но привыкать к этому нужно, разбираться.
Толковых руководств по переходу на новую версию тоже нет - чего стоит опасаться, что делать при возникновении определенных ошибок и т. п.
Думаю, стоит обождать, когда появятся первые комментарии и исправления, а также эти самые руководства.
Да и на официальном сайте - как-то молчком, версия 4.7 была представлена помпезно, а здесь... Это же не новая версия - а новая ветка.
Стоит рассматривать ее как окончательную бета версию :)
А где посмотреть список несовместимых расширений? Может моя ошибка связана с каким то расширением.
Андрей Аксенов
28.11.2012, 13:12
Замечания по версии TYPO3 6:
http://typo3.org/download/release-notes/typo3-60-release-notes/
Пытался поставить на локальный сервер (XAMPP и Денвер), Extention Manager не открывается вообще.
Подожду пока первые косяки исправят, изменений тьма.
у меня вообще апач останавливается.
Нашел как исправить, надо в
httpd.cong добавить:
<IfModule mpm_winnt_module>
ThreadStackSize 8388608
</IfModule>
Связано с тем что для какого-то потока в винде памяти не хватает.
Мне иногда помогает:
.htaccess
php_value upload_max_filesize 1000M
php_value max_execution_time 10000
php_value post_max_size 5500M
php_value max_input_time 52000
php_value memory_limit 5200M
Мне иногда помогает:
.htaccess
php_value upload_max_filesize 1000M
php_value max_execution_time 10000
php_value post_max_size 5500M
php_value max_input_time 52000
php_value memory_limit 5200M
Первое что сделал)
Кто-нибудь пробовал, как работает TemplaVoila? А то ходили слухи, что её закопают.
Андрей Аксенов
29.11.2012, 16:43
Пока не работает она на версии 6, здесь где-то обсуждалось на форуме...
Пока не работает она на версии 6, здесь где-то обсуждалось на форуме...
Это для 2 беты обсуждалось.
Установилось пока что все корректно, буду пробовать мапить.
Андрей Аксенов
29.11.2012, 17:13
Ну отлично, я вот все не соберусь попробовать...
Основные изменения в релизе TYPO3 6.0 на русском - Ссылка (http://aschikov.ru/reliz-typo3-6-0.html)
Андрей Аксенов
03.12.2012, 09:39
Попробовал я вчера...
В модуле udate из install tool затык на моменте переноса файлов.
Сразу не завелась - ошибка в одном из расширений, расширение удалил и все заработало...
Проверил - а не совсем и все. Картинки в галереяx не показываются. Точнее формируются белые изображения - у меня были настроено наложение ватермарков. Убрал ватермарки, картинки появились.
Остальное проверять не стал - откатился.
Вывод - сыровата еще версия, слишком много изменений.
Попробовал я вчера...
В модуле udate из install tool затык на моменте переноса файлов.
Сразу не завелась - ошибка в одном из расширений, расширение удалил и все заработало...
Проверил - а не совсем и все. Картинки в галереяx не показываются. Точнее формируются белые изображения - у меня были настроено наложение ватермарков. Убрал ватермарки, картинки появились.
Остальное проверять не стал - откатился.
Вывод - сыровата еще версия, слишком много изменений.
Этого стоило ожидать, все же изменения довольно глобальные, ждем 6.1 или даже 6.2
Народ, а ради чего вообще переходить на 6-ю? Что принципиально нового, что стоит обновляться. Обновление ради новизны?
Почему стоит обновляться на typo3 6.0:
File Abstraction Layer (FAL) - Killer feature!?
Чистый и оптимизированный код
Багфиксы и безопасность
Можно до первого промежуточного релиза подождать и обновляться.
Хотя если все работает, то можно и не трогать.
Опечалило, что вместо Protype не запилили JQuery, хотя обещали:(
Как то не убедительно, особенно два последних пункта, они кочуют от версии к версии ))))
Андрей Аксенов
05.12.2012, 23:25
FAL - это хорошо... но так и не видел, а как же со старыми расширениями, в частности, с картинками... Мой опыт показывает, что никак...
Все остальное - посмотрим...
Ну со старыми расширениями как раз все просто, они либо допиливаются под новую версию, либо умирают. В Typo3 это как-то проще, т.к. поддерживается хоть какая-то обратная совместимость.
А вот у Drupal каждый новый мажорный релиз, как новая CMS, вроде все тоже самое, а расширения надо заного писать, в итоге на Drupal 7, что-то делать стало возможно только через год после выпуска, да и то сейчас многие модули с версии бета или RC используются.
dmartynenko
06.12.2012, 13:20
А где почитать про эту киллер фичу "File Abstraction Layer"? Где руководство разработчика, как я могу это использовать в своих экстах?
Андрей Аксенов
07.12.2012, 12:22
А где почитать про эту киллер фичу "File Abstraction Layer"? Где руководство разработчика, как я могу это использовать в своих экстах?
Думаю, пока только здесь:
http://forge.typo3.org/projects/typo3v4-fileabstractionlayer/wiki
dmartynenko
07.12.2012, 12:43
Не густо прямо скажем.
Тут недавно в другой ветке обсуждали почему "news" не популярен, а старый и медленный tt_news не сдает своих позиций. Так вот я думаю что все из-за того, что в tt_news просто отличный и подробробный мануал. Прямо образец для мануалов. И нагуглить можно кучу снипетов, статей и решений для tt_news.
А вот пока для news и FAL не появятся столь подробных описаний и примеров использования, не видать им популярности. Даже самые-самые "килерфичи" не помогут большинству в них разобраться без подробных и понятных руководств.
Жаль что для news этого ждать IMHO не стоит. Ведь проект не входит в ядро, а значит не получает финансирование и поддержку "центра". А развивается небольшой группой энтузиастов, у которых на документацию и примеры понятное дело времени не хватает.
Андрей Аксенов
07.12.2012, 12:49
Не густо прямо скажем.
Тут недавно в другой ветке обсуждали почему "news" не популярен, а старый и медленный tt_news не сдает своих позиций. Так вот я думаю что все из-за того, что в tt_news просто отличный и подробробный мануал. Прямо образец для мануалов. И нагуглить можно кучу снипетов, статей и решений для tt_news.
А вот пока для news и FAL не появятся столь подробных описаний и примеров использования, не видать им популярности. Даже самые-самые "килерфичи" не помогут большинству в них разобраться без подробных и понятных руководств.
Жаль что для news этого ждать IMHO не стоит. Ведь проект не входит в ядро, а значит не получает финансирование и поддержку "центра". А развивается небольшой группой энтузиастов, у которых на документацию и примеры понятное дело времени не хватает.
Да, к сожалению это так... На базе news взялся сделать решение для каталога, получилось, но ооочень долго разбирался на примере нескольких расширений. Толком ни в вики, ни в руководстве ничего нет - только на примерах и опыте, хотя до сих пор не осилил создание фильтров, но это впереди :). Да и дело даже не в том, что это не ядро, в ядро сейчас встроены Extbase и Fluid, но и по ним нормальной документации нет, все также приходится додумывать самому и проводить опыты.
dmartynenko
07.12.2012, 13:01
А не поэтому ли теряет позиции TYPO3 ?
Ведь раньше, когда актуальной были вертки 4.1-4.2, новый пользователь сходу получал подробные руководства по ядру, подробное руководство по tt_news, RealURL, DirectMail. И этого вполне хватало для 90% сайтов.
И книги по TYPO3 выпускались - как минимум по одной в год.
Сейчас это все осталось, но для современного сайта на TYPO3 рекомендуют Fluid, Extbase, FED, FAL, news etc. А как их понять и осилить? Честно даже мне не хочется за FAL или news браться. Время ограничено. Закапываться в исходники просто некогда.
Да и новый news последний раз обновлялся еще весной.
Где ни будь pdf-доки можно уже скачать.
А то на сайте не удобно смотреть!
А не поэтому ли теряет позиции TYPO3 ?
Ведь раньше, когда актуальной были вертки 4.1-4.2, новый пользователь сходу получал подробные руководства по ядру, подробное руководство по tt_news, RealURL, DirectMail. И этого вполне хватало для 90% сайтов.
И книги по TYPO3 выпускались - как минимум по одной в год.
Сейчас это все осталось, но для современного сайта на TYPO3 рекомендуют Fluid, Extbase, FED, FAL, news etc. А как их понять и осилить? Честно даже мне не хочется за FAL или news браться. Время ограничено. Закапываться в исходники просто некогда.
Но никто не запрещает и сейчас использовать tt_news, realurl и т.д. Я бы добавил ещё сюда Templavoila, а всякие рюшки и с помщью Javascript прикрутить можно.
Два года назад и в ноябре этого года был в Германии, так вот: 2 года назад по typo3 было множество книжек в магазинах (кстати прикупил http://www.amazon.de/Praxiswissen-TYPO3-Version-4-5/dp/3897215861/ref=sr_1_8?ie=UTF8&qid=1355125729&sr=8-8), в этом году ничего нового не видел, все те же книжки по typo3 4.5 и их стало ощутимо меньше. Хотя в следующем году выйдет одна норм книжица http://www.amazon.de/Praxiswissen-TYPO3-Version-Robert-Meyer/dp/3868998896/ref=sr_1_1?ie=UTF8&qid=1355125802&sr=8-1
Документация, вроде как обновилась, но она на оф. сайте храниться не в PDF а в .sxw формате openoffice.
Вот подробно расписаны новшества 6 ветки - http://typo3.org/fileadmin/t3org/images/FM-content/releases/TYPO3_6-0/20121122-TYPO3-6.0-Whats-New.pdf
Dmitry Dulepov
10.12.2012, 17:48
Народ, а ради чего вообще переходить на 6-ю? Что принципиально нового, что стоит обновляться. Обновление ради новизны?
Если сайт – новый, то стоит делать на 6.0 просто потому, что поддерживать и обновлять будет легче. Если сайт старый, то проще обновиться на 4.7, но надо понимать, что через годик для него обновлений уже не будет (в т.ч., возможно, не будет и обновлений безопасности), а также многие расширения перестанут работать под 4.х. В 6.0 другая структура классов, расширения будут потихоньку переходить на нее.
Если сайт – новый, то стоит делать на 6.0 просто потому, что поддерживать и обновлять будет легче. Если сайт старый, то проще обновиться на 4.7, но надо понимать, что через годик для него обновлений уже не будет (в т.ч., возможно, не будет и обновлений безопасности), а также многие расширения перестанут работать под 4.х. В 6.0 другая структура классов, расширения будут потихоньку переходить на нее.
Дмитрий, а какой вообще вектор развития typo3, видел занятную инфографику в которой написано, что NEOS для небольших сайтов. Зачем тогда нужно было более 5 лет разработки))). Как вы думаете, куда будет развиваться система и какое у неё будущее?
Заранее благодарю за ответ.
-=UncleByte=-
10.12.2012, 22:35
Если сайт – новый, то стоит делать на 6.0 просто потому, что поддерживать и обновлять будет легче. Если сайт старый, то проще обновиться на 4.7, но надо понимать, что через годик для него обновлений уже не будет (в т.ч., возможно, не будет и обновлений безопасности), а также многие расширения перестанут работать под 4.х. В 6.0 другая структура классов, расширения будут потихоньку переходить на нее.А насколько быстро нужно перейти на 6.0 для старых проектов, сделанных на 4.х? И будет ли апдейт безболезненным и спокойным?
А насколько быстро нужно перейти на 6.0 для старых проектов, сделанных на 4.х? И будет ли апдейт безболезненным и спокойным?
Есть мануал по переходу с версии 4.7, нужно пробовать.
Можно пару минорных релизов подождать, пока другие попробуют:)
-=UncleByte=-
11.12.2012, 00:50
Есть мануал по переходу с версии 4.7, нужно пробовать.
Можно пару минорных релизов подождать, пока другие попробуют:)
В том и дело что у меня большинство сайтов сейчас на 4.5.x LTS работают и потому мануал для перехода с 4.7 может и не помочь.
А я вот завтрял при обновлении на этапе Migrate all file relations from tt_content.image and pages.media
Пишет такую ошибку
Fatal error: Class 'finfo' not found in T:\domains\kite.xx\typo3\sysext\core\Classes\Resou rce\Driver\LocalDriver.php on line 529
Андрей Аксенов
11.12.2012, 14:23
Да, у меня на этом этапе тоже затык был... Да и в багтрекере пишут о подобных ошибках на этом этапе.
Да и потом возможны ошибки с файлами, я уже писал, картинки гифбилдером нормально не делались... Вообщем разбираться и разбираться еще...
Зато новая документация стала появляться:
http://typo3.org/documentation/document-library/core-documentation//current/
А что может значить, что в новом интродакшене вместо tt_news новый news?
Андрей Аксенов
12.12.2012, 14:55
А что может значить, что в новом интродакшене вместо tt_news новый news?
А в качестве шаблона там что используют?
А я вот завтрял при обновлении на этапе Migrate all file relations from tt_content.image and pages.media
Пишет такую ошибку
надo для рнр установить модуль fileinfo. Если вы под линуксом то доставить пакет типа php5-fileinfo-5.3.15-1.12.1.x86_64.rpm (У меня Suse). Тогда пойдёт. И по идеи в сорсах есть файл install.txt, где написано какие модули нужны.
Андрей Аксенов
10.01.2013, 01:26
Еще один прикол... Весь день сегодня потратил (зато сервер подновил:).
При обновлении через инстал тул, после первого шага в мастере обновления - создания новых файлов настроек LocalConfiguration.php и AdditionalConfiguration.php вместо старого localconf.php, и перехода к следующему шагу, упорно появляется белый экран...
Перерыл все, но оказалось проще некуда - новый "пустой" файл дополнительных настроек AdditionalConfiguration.php создается с содержимым:
<?php
<?php
?>
Что намертво блокирует работу TYPO3... Будьте внимательны!
Это ошибка плавающая, например в другой раз в localconf.php была закомментирована настройка
/* $typo_db_host = 'localhost'; */
и эта запись появилась в файле AdditionalConfiguration.php...
Андрей Аксенов
10.01.2013, 14:51
Я вот обновляюсь с 4.5. При заходе в Upgrade Wizard вылазит ошибка
На одном из обновляемых сайтов вылезла - проблема, действительно, в одном из расширений, каком - не знаю...
Помогло переключение обратно на старую версию ядра, обновление расширений с последующим обновлением базы данных.
На одном из обновляемых сайтов вылезла - проблема, действительно, в одном из расширений, каком - не знаю...
Помогло переключение обратно на старую версию ядра, обновление расширений с последующим обновлением базы данных.
Много сайтов перевели?
Андрей Аксенов
09.02.2013, 09:39
Перевел штук шесть сайтов
Перевел штук шесть сайтов
С templavoila есть? и как она себя чувствует?
Андрей Аксенов
09.02.2013, 12:30
С templavoila есть? и как она себя чувствует?
Есть, конечно, отлично себя чувствует.
Главная засада в расширениях - никогда не знаешь, на что можно нарваться. И использование DAM, да и сами файлы.
Странная работа t3blog - на одном сайте заработал, на другом - нет. Но это вообще очень странное расширение, к тому же, с интеграцией DAM.
Если с изображениями в расширениях используется гифбилдер, то может и не заработать - например проставление копирайтов на фото и т.п.
Ну и так далее - везде свои заморочки.
В дальнейшем для шаблонирования сайта собираюсь перейти на флюид - занятная штука.
Есть, конечно, отлично себя чувствует.
Главная засада в расширениях - никогда не знаешь, на что можно нарваться. И использование DAM, да и сами файлы.
Странная работа t3blog - на одном сайте заработал, на другом - нет. Но это вообще очень странное расширение, к тому же, с интеграцией DAM.
Если с изображениями в расширениях используется гифбилдер, то может и не заработать - например проставление копирайтов на фото и т.п.
Ну и так далее - везде свои заморочки.
В дальнейшем для шаблонирования сайта собираюсь перейти на флюид - занятная штука.
А скорость разработки на fluid страдать не будет?
Я уже всю голову сломал выбором шаблонизатора. Вроде как fluid это будущее, но Introduction and Goverment package сделаны на automaketemplate.
И кстати предлогаю всем переехать на официальный forum.typo3.org (http://forum.typo3.org), там отдельная группа есть для России и обсуждения идут поживее
Андрей Аксенов
09.02.2013, 13:03
А скорость разработки на fluid страдать не будет?
Я уже всю голову сломал выбором шаблонизатора. Вроде как fluid это будущее, но Introduction and Goverment package сделаны на automaketemplate.
Думаю, это дело привычки. Но если есть время, стоит попробовать. Вообщем-то, довольно удобно, но требует опыта, впрочем, как и все. Сложность в том, что толком нигде не описано - все приходиться "щупать" ручками".
После того, как освоитесь, скорость разработки не пострадает.
И кстати предлогаю всем переехать на официальный forum.typo3.org (http://forum.typo3.org), там отдельная группа есть для России и обсуждения идут поживее
не знал, пойду погляжу.
dmartynenko
09.02.2013, 13:56
И кстати предлогаю всем переехать на официальный forum.typo3.org, там отдельная группа есть для России и обсуждения идут поживее
Чего-то не заметил обсуждений. В основном кроспостинги всяких релизов и секьюрити анонсов.
Или куда смотреть, http://forum.typo3.org/index.php/f/99/ ?
Чего-то не заметил обсуждений. В основном кроспостинги всяких релизов и секьюрити анонсов.
Или куда смотреть, http://forum.typo3.org/index.php/f/99/ ?
Он неделю как вышел в public beta, информация там актуальней, правда не на русском, но можно общаться в своей ветки, вон в Германии во многих городах User groups есть.
Думаю, это дело привычки. Но если есть время, стоит попробовать. Вообщем-то, довольно удобно, но требует опыта, впрочем, как и все. Сложность в том, что толком нигде не описано - все приходиться "щупать" ручками".
После того, как освоитесь, скорость разработки не пострадает.
Я пробовал, похож на все стандартные шаблонизаторы, такие как Smarty или phptemplate в Drupal.
А вот TV была для меня откровением и той киллер фичей из-за которой T3 начал заниматься.
В чем преимущество Fluid над automaketemplate, TV?
Андрей Аксенов
09.02.2013, 18:46
Да, тухло как-то на оф. форуме, как видно из количества ответов и их даты...
Что касается преимуществ, для меня проще понимается шаблон на fluid, чем на родном автотемплейте, а темплавуаля - без костылей не назначить несколько папок для назначения шаблонов, проблемы с их хранением - то ли в БД, то ли в файлах, непростая разметка - структура данных, затем по ней объект шаблона, привязка внутреннего шаблона. Конечно, все решаемо, но мне лично ближе флюид, хотя и там не все прозрачно - шаблоны, макеты и т. п. И не все пока решаемо вчистую на флюид, но можно задействовать TS.
Вообщем большая гибкость, использование внутренних шаблонов страниц из ядра.
Valery Romanchev
09.02.2013, 21:36
но Introduction and Goverment package сделаны на automaketemplate.
Интересно, есть что-то реально полезное в automaketemplate по сравнению с обычным TEMPLATE ?
C тех пор как лет 6 назад в TEMPLATE сделали relPathPrefix, я уже не смотрел на automaketemplate, потому что TEMPLATE было достаточно.
Интересно, есть что-то реально полезное в automaketemplate по сравнению с обычным TEMPLATE ?
C тех пор как лет 6 назад в TEMPLATE сделали relPathPrefix, я уже не смотрел на automaketemplate, потому что TEMPLATE было достаточно.
Полностью согласен...
automaketemplate - вообще ни разу не использовал...:eek:
Я пробовал, похож на все стандартные шаблонизаторы, такие как Smarty или phptemplate в Drupal.
А вот TV была для меня откровением и той киллер фичей из-за которой T3 начал заниматься.
В чем преимущество Fluid над automaketemplate, TV?
Это на любителя и дело вкуса...
Что лучше получается - то и ваше...:)
TV - не использую - она для меня тьма...
А вот gridelements - это супер...
Fluid - конечно не smarty - но для бытовых задач вполне подходит...
Вместе с 4.5 пользовал TV и YAML(db_ttv). Обещалось в шестой версии внести поддержку адаптивного дизайна. И где она? Кто-нибудь уже ковырял в данном направлении? Как делать сайты на шестерке сразу для разных устройств?
Андрей Аксенов
14.02.2013, 14:00
Вместе с 4.5 пользовал TV и YAML(db_ttv). Обещалось в шестой версии внести поддержку адаптивного дизайна. И где она? Кто-нибудь уже ковырял в данном направлении? Как делать сайты на шестерке сразу для разных устройств?
Как обычно - подключение стилей по условию и хорошая адаптивная верстка.
Вместе с 4.5 пользовал TV и YAML(db_ttv). Обещалось в шестой версии внести поддержку адаптивного дизайна. И где она? Кто-нибудь уже ковырял в данном направлении? Как делать сайты на шестерке сразу для разных устройств?
Я вообще слабо понимаю, при чем здесь движок, все это делается средствами CSS а doctype задать на html5 ещё в 4.5 можно было
Вместе с 4.5 пользовал TV и YAML(db_ttv). Обещалось в шестой версии внести поддержку адаптивного дизайна. И где она? Кто-нибудь уже ковырял в данном направлении? Как делать сайты на шестерке сразу для разных устройств?
Как его "адаптивный дизайн" можно стандартизировать и приводить к какому либо готовому расширению?
Согласен - с ответами выше - все делается и так.
Есть контент - а под него делаются различные типы сайтов: обычный, для печати, для мобильных устройств и т.д....
На typo3 - сделать это очень удобно...
Самый простой пример:
http://studsovet-life.ru (обычный)
http://m.studsovet-life.ru (для мобильных)
http://p.studsovet-life.ru (для печати)
И если все расписано правильно - то и не запутаешься...
dmartynenko
14.02.2013, 17:49
Есть момент с картинками.
Сейчас ведь они выводятся через css_styled_content, а он ни о каких responsive не знает.
И там бы пригодилась поддержка чего-то вроде http://adaptive-images.com/
Что бы не прикручивать это каждый раз чем-то внешним.
Есть момент с картинками.
Сейчас ведь они выводятся через css_styled_content, а он ни о каких responsive не знает.
И там бы пригодилась поддержка чего-то вроде http://adaptive-images.com/
Что бы не прикручивать это каждый раз чем-то внешним.
Было может 5 месяцев назад - когда я писал какую-то тему - спрашивая как решить какую-то задачу с картинками - и мне там отвечали - надо это переписать, это поменять css_styled_content - в итоге ничего не работало и не получалось - если честно. После этого я раз и на всегда забил на css_styled_content - и как где-то читал парень писал - TS-это издевательство над программистом - и я полностью с ним согласен.
В итоге мой шаблон в отношении tt_content - таблицы выглядит следующим образом:
[stsov:lib.content] основ.содержимое
>> Констатны
#Добавляем выборку из таблиц (tx_infoblock_elements_students)
content.shortcut.tables := addToList(tx_infoblock_elements_students)
>> Установки
#Подключение библиотек элементов контента
includeLibs.user_content_image = fileadmin/def-studsovet-x/systemdir/content/image.php
includeLibs.user_content_uploads = fileadmin/def-studsovet-x/systemdir/content/uploads.php
includeLibs.user_content_student = fileadmin/def-studsovet-x/systemdir/content/student.php
includeLibs.user_content_ts_code = fileadmin/def-studsovet-x/systemdir/content/ts-code.php
#Обычный текст
tt_content.text = TEXT
tt_content.text.field = bodytext
tt_content.text.parseFunc < lib.parseFunc_RTE
#Чистый HTML
tt_content.html = TEXT
tt_content.html.field = bodytext
#Картинки
tt_content.image >
tt_content.image = USER
tt_content.image.userFunc = user_content_image->main
#Картинки с текстом
tt_content.textpic >
tt_content.textpic = USER
tt_content.textpic.userFunc = user_content_image->main
#Файл
tt_content.uploads = USER
tt_content.uploads.userFunc = user_content_uploads->main
#Разделитель (оборачивается в серый блок)
tt_content.div = TEXT
tt_content.div.value =
#Карта сайта (просо добавляем символ "»")
tt_content.menu.20.2.1.NO.wrapItemAndSub = <li>» |</li>
tt_content.menu.20.default.1.NO.wrapItemAndSub = <li>» |</li>
#typoscript-код на странице
tt_content.typoscript_code = USER
tt_content.typoscript_code.userFunc = user_content_typoscript->main
#Студенты
#Ссылка на другие записи (нужно для вставки студентов)
#tt_content.shortcut.20.0.conf.tx_itawyoutoubeembe d_itawyoutube = < lib.testt
#tx_itawyoutoubeembed_itawyoutube = COA
#tx_itawyoutoubeembed_itawyoutube.1 = TEXT
#tx_itawyoutoubeembed_itawyoutube.1.value = user_content_uploads->main
tx_infoblock_elements_students = USER
tx_infoblock_elements_students.userFunc = user_content_student->main
#Получение содержимого для вывода на страницу
lib.content < styles.content.get
#Настройка шаблона-обертки для конетнта
lib.content.renderObj.stdWrap.innerWrap.cObject=CA SE
lib.content.renderObj.stdWrap.innerWrap.cObject.ke y.field = layout
lib.content.renderObj.stdWrap.innerWrap.cObject{
#Без обертки
0 = TEXT
0.value = |
#блок-зеленая обертка
1 = TEXT
1.value = <p class="blockContent green">{field:header}</p><div class="wrapblock">|</div>
1.insertData = 1
#блок-синяя обертка
2 = TEXT
2.value = <p class="blockContent blue active">{field:header}</p><div class="wrapblock">|</div>
2.insertData = 1
#блок-красная обертка
3 = TEXT
3.value = <p class="blockContent red">{field:header}</p><div class="wrapblock">|</div>
3.insertData = 1
#блок-предупреждение
4 = TEXT
4.value = <p><div class="blockContentWarning">|</div></p>
#Информационная справка
5 = TEXT
5.value = <p><div class="blockContentInformation">|</div></p>
#Обертка для видео
6 = TEXT
6.value = <p class="blockContent green">{field:header}</p><div class="blockContentTVideo">|</div>
6.insertData = 1
#Обертка вечная память
7 = TEXT
7.value = <p><div class="blockContentEternalMemory">|</div></p>
7.insertData = 1
#блок-заблокированный (серый)
8 = TEXT
8.value = <p class="blockContent grey">{field:header}</p>
8.insertData = 1
#контейнер для содержимого на главной (по нему jquery-определяет что нужно создать слайды)
9 = TEXT
9.value = <div class="jquery-11-42-slide">|</div>
}
И таким подходом - я могу делать все - что захочу а не мусолить с замечательный TS - на котором бы я подобные задачи решал может быть месяц, а то и вовсе бы не решели....
А эту штуку http://adaptive-images.com/ я бы всеравно ставил только на m.**** сайт...
Т.е. она всеравно определяет размеры окна через JS.
Вообще я за чистый код и очень не люблю - если кто-то чтото будет в него вставлять без моего на то согласия и ведома!
...
dmartynenko
14.02.2013, 18:20
А тут user_content_image->main, получается, вы полностью сделали свою логику обработки IMAGE ?
Запостите сюда для народа :)
Я вообще слабо понимаю, при чем здесь движок, все это делается средствами CSS а doctype задать на html5 ещё в 4.5 можно было
при том, что раньше (под более ранние версии, чем 6) была (работала) TV для создания FCE и mapping'а шаблона и YAML, где была уже куча адаптируемых шаблонов, из которых надо было только выбрать более-менее подходящий. и не говорите, что это было плохо или неправильно, потому что это было удобно, быстро и это работало. С переходом на 6-ку мне бы хотелось иметь все то-же самое. А не искать где-то что-то новое или, тем более, не делать все самому ручками Как обычно - подключение стилей по условию и хорошая адаптивная верстка. - бо так теряется смысл CMS, которая не только для редакторов, но и для нас тоже, да?
Так что вопрос был в том, не знает ли кто, с помощью каких расширений (или уже может вообще Typo3 сама все делает) делать как раньше быстро и удобно сайты на адаптивном дизайне?
Андрей Аксенов
14.02.2013, 21:53
Так что вопрос был в том, не знает ли кто, с помощью каких расширений (или уже может вообще Typo3 сама все делает) делать как раньше быстро и удобно сайты на адаптивном дизайне?
А как раньше-то было? Ребята и не в курсе :).
Каждый, по-моему, что-то свое изобретает. Так что изложите, как вы лично привыкли работать? Я, например, использовал адаптированные под себя templavoila_framework шаблоны + куски TS.
Тепмлавуаля и сейчас работает... С YAML не работал - но что мешает? Тем более для всего этого у каждого своя связка инструментов.
Говорите об этом, как будто это стандарт де факто...
Что сейчас мешает создать под себя шаблоны и выбирать подходящий?
Я пытаюсь подстроить под себя шаблоны Fluid, ну и соответственно, этот сайт в помощь (http://fedext.net)...
Ну а как инструмент отлично подходит PhpStorm - автодополнения по TS, ну и Fluid также подключается, помимо прочего.
Помимо прочего, старые расширения в основном также работают и на новых версиях TYPO3, иногда не так уж и много нужно там поменять, если вообще нужно.
А тут user_content_image->main, получается, вы полностью сделали свою логику обработки IMAGE ?
Запостите сюда для народа
Да - и еще пару моментов - на заметку - что бы не забыть в первую очередь - т.к. думаю что это будет обмен опытом...
1. которого я так долго ждал: я ушел от папки fileadmin - т.е. я больше не использую ее для хранения шаблонов сайта, функций и всего прочего: - она у меня осталась чистой - только для "tree" (я ее так называю) - т.е. по чпу она у меня копирует содержимое сайта...
Например есть раздел:
http://studsovet-life.ru/projects/zkp-42/
соответственной в fileadmin есть
fileadmin/projects/zkp-42/ - где хранятся фотки для данного раздела и материалы zip , rar - если они есть , в данном проекте фоновое изображение!
и в настоящем я готов убить любого - кто перемещает данную логику расфасовки материала! - :o
Стараюсь закрывать все на index кроме fileadmin, uploads (хотя данную папку я тоже стараюсь не использовать т.к. она дублирует контент - а это лишний объем и основного сайта !
2. момент - никогда не использую javascript и style в html-коде - все выношу во внешние файлы (исключение metrika) - таким образом получается начистейший код
- ну и так как ext-у меня только самый минимум - html кода и php-кода лишнего нет - в т.ч. extbase...
в данном проекте логика построения systemdir Такая:
depo.css - основной стиль дизайна
content.css - стили контента
content.m.css - стили контента (переписывают content.css)
content.p.css - стили контента (переписывают content.css)
для мобильных используются специальный jquery mobile css
--
document-ready.js - запуск проекта
document-ready.m.js - запуск проекта мобильный
хотя в больших проектах
document-ready.js - собирается из различных кусочков
в данном проекте document-ready.js один...
3. момент - ну это касательно таблиц pages и tt_content - данный проект построен исключительно на страницах - а вообще страницы использую по минимуму - в основном на них работают плагины - которые создают виртуальный страницы и содержимое (возможно без виртуальных страниц).... а tt_content предлагает создать контент (картинка, изображение, текст, файл) - для упрощенных проектов это вполне приемлемо - но создавать страницы по такому набору в больших проектах - это очень не удобно) - и это к вопросу о данном расширении: http://forum.typo3.biz/showthread.php?t=6697
Для редакторов сайта как вижу нужно задавать жесткую форму (где уже скрипт сам автоматически расставит элементы)...
Вот если посмотреть http://newsland.com/news/detail/id/1125491/
то здесь каждая новость имеет жесткий набор параметров (заголовок, фото с права, комментарии, текст)
таким образом - одна новость = одна запись в БД
а с http://forum.typo3.biz/showthread.php?t=6697 - одна новость = несколько записей в БД
Причем фото с права вставляется не через визуальный редактор - а через специальное поле для этого - уверен на 110%!
4. ну и по поводу css_styled_content (примеры):
ХОЧУ ПОДЧЕРКНУТЬ ОДИН МОМЕНТ - очень важный на мой взгляд для понимания - typo3 через css_styled_content - пытается стандартизировать то, что в принципе не возможно стандартизировать - т.к. это зависит от проекта - поэтому перешел на user->main()
Картинки images.php:
<?php
//Элемент контента - а) список изображений (cType image) б) изображения с текстом (cType textpic)
class user_content_image {
var $cObj;
function main($content, $conf) {
//Разбиваем загруженные изображения, а также стили к ним и подписи
$allStyle = explode(chr(10) , $this->cObj->data['imageorient']);
$allTitle = explode(chr(10) , $this->cObj->data['imagecaption']);
$allImage = explode("," , $this->cObj->data['tx_emreferences_filereferences']);
for ($i = 0; $i < count ($allImage); $i ++)
{
//imageorient (стандартный-ничего не трогаем | half 191c - половинчатое изображение | wide широкий | wide text широкий с текстом)
//Создаем уменьшенную копию изображения
$arrImgParams['file'] = 'fileadmin/'.$allImage[$i];
$arrImgParams['file.']['width'] = (trim($allStyle[$i]) == "wide" || trim($allStyle[$i]) == "wide text") ? '404c' : '120c';
$arrImgParams['alttext'] = str_replace("|>" , false, $allTitle[$i]); //удаляем "самовведенный тэг" перевода строки
$arrImgParams['titleText'] = str_replace("|>" , false, $allTitle[$i]); //удаляем "самовведенный тэг" перевода строки
$img = $this->cObj->IMG_RESOURCE($arrImgParams);
//Удаляем атрибуты width и height
//$img = preg_replace("/(width=\".+?\"|height=\".+?\")/", null,$img);
$img = "/".$img;
//Узнаем размеры временного изображения, что бы вписать их в style div
preg_match('/src=([\'"])?((?(1).+?|[^\s>]+))(?(1)\1)/is', $img, $basename);
$size = getimagesize ($basename[2]);
//параметры для моб. версии сайта
$jquerymobile = 'rel="external"'; // data-something="something'.$i.'" data-another-thing="anotherthing'.$i.'"
//css-класс для больших 100% и маленьких 33%-изображений
$cssClassImage = ($arrImgParams['file.']['width'] == '404c') ? 'width100' : 'width33' ;
//Вариант №2 - с подписью и при условии, что подпись существует
if (trim($allStyle[$i]) == "wide text" AND strlen (trim($allTitle[$i])) > 0 )
{
$content .= '<div class="imageBox"><div class="imageFrame text '.$cssClassImage.'" style="width: '.$size[0].'px; height: '.$size[1].'px;">
<a class="imageZoom" title="'.$arrImgParams['titleText'].'" href="/fileadmin/'.$allImage[$i].'" '.$jquerymobile.'><img src="'.$img.'" alt="'.$arrImgParams['titleText'].'" border="0"></a></div>';
//Если существует текст и cType textpic
if ($this->cObj->data['CType'] == "textpic")
{
$this->cObj->data['bodytext'] = $this->cObj->parseFunc($this->cObj->data['bodytext'],$GLOBALS['TSFE']->tmpl->setup['lib.']['parseFunc_RTE.']);
$content .= '<div class="textAlt">'.$this->cObj->data['bodytext'].'</div></div>';
}
else
$content .= '<div class="textAlt">'.str_replace("|>" , "<br />", $allTitle[$i]).'</div></div>';
}
//Вариант №1 - без подписи
else
$content .= '<div class="imageFrame text '.$cssClassImage.'" style="width: '.$size[0].'px; height: '.$size[1].'px;">
<a class="imageZoom" title="'.$arrImgParams['titleText'].'" href="/fileadmin/'.$allImage[$i].'" '.$jquerymobile.'><img src="'.$img.'" alt="'.$arrImgParams['titleText'].'" border="0"></a></div>';
}
return '<center><div class="imageWrap">'.$content.'</div></center><br class="clearall" style="clear: left;">';
}
}
?>
Слайдер sliderz.php
<?php
//Наполнение слайдера в шапке изображениями
class user_sliderz {
var $cObj;
function main($content, $conf) {
$handle = opendir (PATH_site."fileadmin/def-studsovet-x/systemdir/images/slider/");
//Собираем массив с файлами слайда
while($file = readdir($handle))
if (is_file(PATH_site."fileadmin/def-studsovet-x/systemdir/images/slider/".$file))
{
$path_parts = pathinfo( PATH_site."fileadmin/def-studsovet-x/systemdir/images/slider/".$file );
$sliderlement[ $path_parts["filename"] ] = $file;
}
//Сортируем массив
ksort ($sliderlement);
//Выводим содержимое (собираем контент)
foreach ($sliderlement as $key => $val):
$content .= "<div class='element'><img src='";
$content .= "/fileadmin/def-studsovet-x/systemdir/images/slider/".$val;
$content .= "'></div>\n";
endforeach;
return $content;
}
}
?>
при подобном подходе можно применять очень служную логику - "шаблон > фотографии > поля для ввода"
Но как вижу - задача программиста ни в том, что бы создавать сложную логику (это опять же к вопросу того, что обсуждалось на форуме - где-то писалось что создать такой же магазин как у битрикса очень сложно - ссылаясь на то, что там очень много зависимостей - самый сложный участок - это интеграция с 1С или другой системой, да и вообще в любых задачах - а в остальном терпимо!) а в том, что бы создать формы для ввода данных - что бы ее потом могли легко заполнить отдел секретарей - и ничего не сломать...
5. момент sitemap.xml и robots.txt - Генрятся через TS
и если еще что-то вспомну - напишу красненьким сюда же...
http://studsovet-life.ru/fileadmin/def-studsovet-x/tree/72/bestorage-fe.png
http://studsovet-life.ru/fileadmin/def-studsovet-x/tree/72/bestorage-settings.png
http://studsovet-life.ru/fileadmin/def-studsovet-x/tree/72/ftp-structure.png
document-ready.js
$(function() {
//************************************************** ***************//
//-1. Скрипт для эффектирования банера на главной странице
//************************************************** ***************//
$("#information").hide();
$("#information").slideDown(1000);
$('#information .container').click(function(){
var nowposition = $(this).css('backgroundPosition');
switch (nowposition)
{
case '0px 0px': $(this).css('backgroundPosition', '0px -180px'); break;
case '0px -180px': $(this).css('backgroundPosition', '0px -360px'); break;
case '0px -360px': $(this).css('backgroundPosition', '0px -540px'); break;
case '0px -540px': $(this).css('backgroundPosition', '0px -720px'); break;
case '0px -720px': $(this).css('backgroundPosition', '0px -900px'); break;
default: $(this).css('backgroundPosition', '0px 0px'); break;
}
//$(this).css('backgroundPosition', '0 bottom');
});
//************************************************** ***************//
//0. Скрипт для главной страницы -
// а) - создает 11 картинок по 42px
//************************************************** ***************//
//Проверяем - если существует специальный контейнер на главной
if ( $('.jquery-11-42-slide').length )
{
//сохраняем высоту
var heightcontent = $('#content').height();
var menuhoverblock = 0; //блокировать ли выпадение меню?
//a) Скрываем основное содержимое
$('.globalwrap').hide();
$('.jquery-11-42-slide').css("visibility", "hidden");
//b) Создаем 11 слайдов по 42px; и кнопку переключения №1
var content11 = '<div id="index11">';
for (var k = 1; k <= 11; k ++){
if (k <= 10)
content11 += '<div class="element default" style="background-image: url(fileadmin/def-studsovet-x/systemdir/images/index-bg-images/'+k+'.png);"></div>';
else
content11 += '<div class="element last" style="background-image: url(fileadmin/def-studsovet-x/systemdir/images/index-bg-images/'+k+'.png);"></div>';
}
content11 += '<br class="clearall"><div class="abutton open"></div></div>';
$("#primary").after(content11);
//с) Создаем кнопку переключения №2
$("#content img").after('<br /><br /><br /><div class="abutton close"></div>');
//d) анимация для кнопки перюключения (открыть|запрыть)...
$('.abutton.open').click(function(){
menuhoverblock = 1; //блокируем выпадение меню
$(this).animate({ left: "48px" }, 150 )
.animate({ left: "380px" }, 150 );
$('#index11').slideUp(1000, function () {
$('.globalwrap').slideDown(1000, function () {
$('.jquery-11-42-slide').css("visibility", "visible").hide().fadeIn(1000);
menuhoverblock = 0; //разблокировка меню
});
});
});
$('.abutton.close').click(function(){
menuhoverblock = 1; //блокируем выпадение меню
$(this).animate({ left: "28px" }, 50 )
.animate({ left: "48px" }, 50 );
$('.jquery-11-42-slide').fadeOut(1000, function(){
$('#content').height( heightcontent + 48 );
$('.globalwrap').slideUp(1000, function(){
$('#index11').slideDown(1000, function(){
menuhoverblock = 0; //разблокировка меню
});
});
});
//$('.globalwrap').css("visibility", "hidden").hide().slideUp(1000, function () {
//$('#index11').slideDown(1000);
//});
});
//e) создаем анимацию к 11 слайдам
$("#index11 .element").css({ opacity: 0.1 });
$('#index11 .element').animate({ opacity: 1 }, 1500);
$('#index11 .element').hover(function(){
//$('#index11 .element').css({ opacity: 0.3 });
$(this).stop(true, true).animate({ opacity: 1 }, 1500);
},
function(){
$(this).stop(true, true).animate({ opacity: 0.3 }, 1500);
});
}
//************************************************** ***************//
//1. Настройка выпадающего меню
// подгоняем под размеры выпадающее меню
//************************************************** ***************//
$("#navmenu div.level-2").hide();
$('#navmenu ul.level-1 li a').click(function(){ $("#navmenu div.level-2").hide()});
$('#navmenu ul.level-1 li').hover(function(){
//Если выпадение меню запблокировано в коде пропраммы
if (menuhoverblock == 1)
return false;
//Узнаем высоту контента и подгоняем высоту меню под его размер
//Устанавливаем максимальюную высоту для наших выпадающих меню 2-уровня
var heightcontent = $('.resize').height();
$(this).find("div.level-2").css( { 'max-height' : (heightcontent-66+182)+'px' } );
$(this).find("div.level-2").stop(true, true).slideDown(420);
},
function(){
$(this).find("div.level-2").hide();
return false;
});
//************************************************** ***************//
//2. Кнопка на верх
//************************************************** ***************//
if ( $(document).height() > 1800)
{
//Если высота документа большая, показываем кнопку "наверх"
$('p.topscroll').show().click(function(){
//$(document).scrollTop( 0 );
$('html, body').animate({scrollTop:0}, 'slow');
return false;
});
}
//************************************************** ***************//
//3. Кнопка назад (нужна на 404-старнице)
//************************************************** ***************//
$("p.backlink").click(function(event) {
event.preventDefault();
history.back(1);
});
//************************************************** ***************//
//4. Слайдер в шапке
//************************************************** ***************//
var sliderzAllElement = $("#sliderz .content .element").size(); //Узнаем количетсов элементов в слайдере
var sliderzNowPosition = 1; //Текущяя позиция слайдера
var sliderzAppendContent; //HTML-Контент с дотами
var sliderzAutoPlay = 1; //1-играть, 0-пауза
$('#sliderz .element').hide(); //Скрываем все элементы
$('#sliderz .element:eq(0)').fadeIn(1800); //Показываем анимационно 1-вый div
$(".bredo").show(1);
$(".bredo").click(function(){
/* Анимация кнопки (начало) */
$( ".bredo" ).animate({ left: "-48px" }, 100 )
.animate({ left: "-18px" }, 100 )
.animate({ left: "-32px" }, 100 )
//Скрываем все элементы
$('#sliderz .element').hide();
//Вычесляем что показать
if (sliderzNowPosition <= 1) sliderzNowPosition = sliderzAllElement;
else sliderzNowPosition --;
//Показываем анимационно нужный div
$('#sliderz .element:eq('+(sliderzNowPosition - 1)+')').fadeIn(1000);
//Выделяем нужный дот
$('#sliderz .navelement a').removeClass('act'); //удаляем все активне классы
$('#sliderz .navelement a:eq('+(sliderzNowPosition - 1)+')').addClass('act');
});
$(".bnext").show(1);
$(".bnext").click(function(){
/* Анимация кнопки */
$( ".bnext" ).animate({ right: "-48px" }, 100 )
.animate({ right: "-18px" }, 100 )
.animate({ right: "-32px" }, 100 )
//Скрываем все элементы
$('#sliderz .element').hide();
//Вычесляем что показать
if (sliderzNowPosition >= sliderzAllElement) sliderzNowPosition = 1;
else sliderzNowPosition ++;
//Показываем анимационно нужный div
$('#sliderz .element:eq('+(sliderzNowPosition - 1)+')').fadeIn(1000);
//Выделяем нужный дот
$('#sliderz .navelement a').removeClass('act'); //удаляем все активне классы
$('#sliderz .navelement a:eq('+(sliderzNowPosition - 1)+')').addClass('act');
});
$('.bgoto').live('click', function() {
//Позиция к которой прокрутить слайдер
var gotox = $(this).attr('slidenum');
sliderzNowPosition = gotox - 1;
//Скрываем все элементы
$('#sliderz .element').hide();
//Вычесляем что показать
if (sliderzNowPosition >= sliderzAllElement) sliderzNowPosition = 1;
else sliderzNowPosition ++;
//Показываем анимационно нужный div
$('#sliderz .element:eq('+(sliderzNowPosition - 1)+')').fadeIn(1000);
//Выделяем нужный дот
$('#sliderz .navelement a').removeClass('act'); //удаляем все активне классы
$('#sliderz .navelement a:eq('+(sliderzNowPosition - 1)+')').addClass('act');
});
//Создаем список дотов ul li
contentAppendSliderz = '<div class="navelement"><ul><li><a class="act bgoto" slidenum="1"></a></li>';
for (var i = 2; i <= sliderzAllElement; i ++)
contentAppendSliderz += '<li><a class="bgoto" slidenum="'+(i)+'"></a></li>';
contentAppendSliderz += '</ul></div>';
$("#sliderz").append(contentAppendSliderz);
//Автопрокрутка
var refreshId = setInterval(function(){
if (sliderzAutoPlay == 0)
return false;
//Скрываем все элементы
$('#sliderz .element').hide();
//Вычесляем что показать
if (sliderzNowPosition >= sliderzAllElement) sliderzNowPosition = 1;
else sliderzNowPosition ++;
//Показываем анимационно нужный div
$('#sliderz .element:eq('+(sliderzNowPosition - 1)+')').fadeIn(1000);
//Выделяем нужный дот
$('#sliderz .navelement a').removeClass('act'); //удаляем все активне классы
$('#sliderz .navelement a:eq('+(sliderzNowPosition - 1)+')').addClass('act');
}, 7200);
//Приостановка таймера
$('#sliderz').hover(function(){ sliderzAutoPlay = 0; /* пауза */ },
function(){ sliderzAutoPlay = 1; /* играть */ });
//************************************************** ***************//
//5.Скрыть/развернуть блок с контентом (переключатель)
//************************************************** ***************//
$('p.green, p.red').next().hide(); //по умолчанию контент скрыт
$('p.blockContent').not('p.grey').click(function() { /* not('p.grey')-исключаем его, т.к. он заблокированным считается */
//Создаем переключатель в зависимости от класса
if ($(this).hasClass('active'))
{
$(this).removeClass("active")
$(this).next().hide();
}
else
{
$(this).addClass("active");
$(this).next().fadeIn(750);
}
});
//************************************************** ***************//
//6. Увеличение изображений по клику на них
//************************************************** ***************//
var imageInLink; //оригинал изображения в гиперссылке
var documentScroll; //на сколько прокручен документ
var imageUrl; //Путь новой картинки (которую увеличиваем)
//Пользователь нажал на нужную нам картинку
$('a.imageZoom').click(function(){
//Собараем контент для всплывающего окошка
imageInLink = $(this).children("img"); //маленькое изображение в гиперссылке
imageUrl = $(this).attr('href'); //Путь картинки
documentScroll = $(document).scrollTop();
//скрываем изображение - т.самым показываем глобус
imageInLink.css("visibility", "hidden");
//Прежде чем показать окно, ждем пока загрузиться изображение
var tmpImg = new Image();
tmpImg.src = imageUrl;
if (tmpImg.complete)
{
$('#main').hide(); //Скрываем основной документ
//Создаем окно с изображением
$("body").append('<table class="windowdialog" width="100%" height="100%" border="0" cellspacing="10" cellpadding="15">\
<tr><td align="center" valign="middle"><img id="zoomImageResult" src="'+imageUrl+'"></td></tr></table>');
//Подгоняем изображение под размер окна
//Т.е. уменьшаем ширину, до тех пор, пока не будет подогнано под нужны размер окна браузера
var returnWidth = $('#zoomImageResult').width();
var returnHeight = $('#zoomImageResult').height();
while (1)
{
//Здесь 72 - это cellspacing="10" cellpadding="15" , а также padding 8px к img
if ( returnWidth > $(window).width() - 72 || returnHeight > $(window).height() - 72 )
{
returnWidth = returnWidth - (returnWidth/100);
returnHeight = returnHeight - (returnHeight/100);
//alert( "Размер окна:" + $(window).width() + "Размер подогнанного изображения" + returnWidth);
}
else
break;
}
$('#zoomImageResult').width( returnWidth );
}
else
tmpImg.onload = function() {
/* $('#main').hide(); //Скрываем основной документ
//Если размеры изображения больше размером окна - присваиваем им соответствующий размер
if ( tmpImg.width > $(window).width() )
var returnWidth = 'width="'+($(window).width()-250)+'"';
//Создаем окно с изображением
$("body").append('<table class="windowdialog" width="100%" height="100%" border="0" cellspacing="10" cellpadding="15">\
<tr><td align="center" valign="middle"><img '+returnWidth+' src="'+imageUrl+'"></td></tr></table>');
*/
$('#main').hide(); //Скрываем основной документ
//Создаем окно с изображением
$("body").append('<table class="windowdialog" width="100%" height="100%" border="0" cellspacing="10" cellpadding="15">\
<tr><td align="center" valign="middle"><img id="zoomImageResult" src="'+imageUrl+'"></td></tr></table>');
//Подгоняем изображение под размер окна
//Т.е. уменьшаем ширину, до тех пор, пока не будет подогнано под нужны размер окна браузера
var returnWidth = $('#zoomImageResult').width();
var returnHeight = $('#zoomImageResult').height();
while (1)
{
//Здесь 72 - это cellspacing="10" cellpadding="15" , а также padding 8px к img
if ( returnWidth > $(window).width() - 72 || returnHeight > $(window).height() - 72 )
{
returnWidth = returnWidth - (returnWidth/100);
returnHeight = returnHeight - (returnHeight/100);
//alert( "Размер окна:" + $(window).width() + "Размер подогнанного изображения" + returnWidth);
}
else
break;
}
$('#zoomImageResult').width( returnWidth );
} ;
return false;
});
//Пользователь закрывает окно с увеличенной картинкой
$('table.windowdialog').live('click', function() {
imageInLink.addClass("visited"); //Показываем изображение в гиперссылке | затемняем его как просмотренное
$('a.imageZoom img').css("visibility", "visible"); //Исправляем небольшй баг, если жмется несколько картинок...
$('table.windowdialog').remove(); //Удаляем созданное окно
$('#main').show(); //Показываем основной документ
$(document).scrollTop( documentScroll ); //Возвращяем скроллинг страницы
return false;
});
//Пользователь приближает окно
//Используется lib/jquery.mousewheel-3.0.4.pack.js
/*
$('table.windowdialog img').live('mousewheel', function(event, delta) {
//var dir = delta > 0 ? 'Up' : 'Down',
//Вычесляем %-на который нужно увеличить/уменишьть
var percent = $(this).width()
if (delta > 0)
$(this).width( $(this).width() + 50 );
else
$(this).width( $(this).width() - 50 );
return false;
}); */
});
tpl.html
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<link rel="stylesheet" type="text/css" href="depo.css" media="all">
</head>
<body>
<!-- ###DOCUMENT_BODY### -->
<div id="main" class="###seasons###">
<div class="sepborder-open">
<div id="syslinks">
<!-- ###syslinks### -->
<img src="/fileadmin/def-studsovet-x/systemdir/images/syslinks/print.png"> Версия для печати |
<img src="/fileadmin/def-studsovet-x/systemdir/images/syslinks/phone.png"> мобильная версия |
<img src="/fileadmin/def-studsovet-x/systemdir/images/syslinks/sitemap.png"> карта сайта
<!-- ###syslinks### -->
</div>
</div>
<div class="sepborder"></div>
<div id="header"><div class="logo"><!-- ###linkindex### --><a href="/"></a><!-- ###linkindex### --></div></div>
<div class="sepborder"></div>
<div id="sliderz">
<div class="bredo"></div>
<div class="bnext"></div>
<div class="content">
<!-- ###sliderz### -->
<div class="element"><img src="/fileadmin/def-studsovet-x/systemdir/images/slider/1.jpg"></div>
<div class="element"><img src="/fileadmin/def-studsovet-x/systemdir/images/slider/2.jpg"></div>
<div class="element"><img src="/fileadmin/def-studsovet-x/systemdir/images/slider/3.jpg"></div>
<div class="element"><img src="/fileadmin/def-studsovet-x/systemdir/images/slider/4.jpg"></div>
<!-- ###sliderz### -->
</div>
</div>
<div class="sepborder"></div>
<div id="navmenu"><!-- ###navMenu### -->Меню<!-- ###navMenu### --></div>
<div class="sepborder" style="display: none;"></div>
<div id="promotion" style="display: none;"><div class="wrap">
<!-- ###promotion### -->
<img src="/fileadmin/def-studsovet-x/systemdir/promotion.png">
<!-- ###promotion### -->
</div></div>
<div class="resize"><!--для определения размера содержимого (нужно для меню)-->
<div id="primary" class="sepborder"></div>
<div class="globalwrap">
<div id="content" class="###contentClass###" style="background-image: url(###bgfonImage###);">
<div class="wrap" style="padding-top: ###contentPadding###px;">
<div id="breadcrumb"><!-- ###breadcrumb### -->Навигационная цепочка<!-- ###breadcrumb### --></div>
<!-- ###content### -->Содержимое<!-- ###content### -->
<!--данная кнопка регилуруется jquery-->
<p class="topscroll"><span>Наверх</span></p>
<!--<p align="center">« предудыщая страница | следующая страница »</p>-->
</div>
</div>
</div>
</div>
<div class="sepborder short"></div>
<div id="information"><div class="container"><span>Студенческая жизнь - это время для новых знаний и открытий.
Миссия совета: продвижение и развитие личности студента.
Задача совета: укрепление позиций студенческой корпорации.</span></div></div>
<div class="sepborder"></div>
<div id="banner">
<!--###menubanners###-->
<div class="wrap left"></div>
<div class="wrap center"></div>
<div class="wrap right"></div>
<!--###menubanners###-->
</div>
<div class="sepborder"></div>
<div id="footer"></div>
<div class="sepborder"></div>
<div class="sepborder-close">
<div id="syslinks2">
<!-- ###syslinks2### --><a>Версия сайта: 4.48 |
copyright © 2012 |
обмен ссылками |
powered by TYPO3</a>
<!-- ###syslinks2### -->
</div>
</div>
<div id="metrika">
<!-- Yandex.Metrika informer -->
<a href="http://metrika.yandex.ru/stat/?id=19455046&from=informer"
target="_blank" rel="nofollow"><img src="//bs.yandex.ru/informer/19455046/2_1_FFFFFFFF_EFEFEFFF_0_uniques"
style="width:80px; height:31px; border:0;" alt="Яндекс.Метрика" title="Яндекс.Метрика: данные за сегодня (уникальные посетители)" onclick="try{Ya.Metrika.informer({i:this,id:19455046,type:0 ,lang:'ru'});return false}catch(e){}"/></a>
<!-- /Yandex.Metrika informer -->
</div>
</div>
<!-- Yandex.Metrika counter -->
<script type="text/javascript">
(function (d, w, c) {
(w[c] = w[c] || []).push(function() {
try {
w.yaCounter19455046 = new Ya.Metrika({id:19455046,
webvisor:true,
clickmap:true,
trackLinks:true,
accurateTrackBounce:true,
trackHash:true});
} catch(e) { }
});
var n = d.getElementsByTagName("script")[0],
s = d.createElement("script"),
f = function () { n.parentNode.insertBefore(s, n); };
s.type = "text/javascript";
s.async = true;
s.src = (d.location.protocol == "https:" ? "https:" : "http:") + "//mc.yandex.ru/metrika/watch.js";
if (w.opera == "[object Opera]") {
d.addEventListener("DOMContentLoaded", f, false);
} else { f(); }
})(document, window, "yandex_metrika_callbacks");
</script>
<noscript><div><img src="//mc.yandex.ru/watch/19455046" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
<!-- /Yandex.Metrika counter -->
<!-- ###DOCUMENT_BODY### -->
<!-- ###DOCUMENT_BODY_PRINT### -->
<table width="100%" align="center" border="0" id="print" class="print">
<tr><td align="right"><i>Версия страницы сайта для печати</i><br /><center><img align="center" vspace="20" src="/fileadmin/def-studsovet-x/tree/bank/corp/logo-200x52.png"></center></td></tr>
<tr><td id="breadcrumb"><!-- ###breadcrumb### -->Навигация<!-- ###breadcrumb### --></td></tr>
<tr><td id="content"><!-- ###content### -->Содержимое<!-- ###content### --></td></tr>
<tr><td id="footer">Официальный сайт Студенческого совета НОУ ВПО «Академии МНЭПУ»<br />
Информационный центр совета - сайт создан в 2010 году<br />
Сайт модернзирован в 2012 году</td></tr>
</table>
<!-- ###DOCUMENT_BODY_PRINT### -->
<!-- ###DOCUMENT_BODY_MOBILE### -->
<div id="welcome" data-role="page" class="document">
<div data-role="header">
###button_back###
<center><img align="center" hspace="20" vspace="42" src="/fileadmin/def-studsovet-x/tree/bank/corp/logo-200x52-white.png"></center>
###button_home###
</div><!-- /header -->
<div data-role="content" class="content">
<div data-role="collapsible" data-theme="a" data-content-theme="c">
<h2><!-- ###breadcrumb### -->Навигация<!-- ###breadcrumb### --></h2>
<ul data-role="listview">
<!-- ###navMenu### -->Меню основное<!-- ###navMenu### -->
###button_up### <!--кнопочка назад (появляется только когда не на главной)-->
</ul>
</div>
<!-- ###content### -->Содержимое<!-- ###content### -->
</div><!-- /content -->
<div data-role="footer">
<div data-role="navbar">
<ul data-theme="a" data-dividertheme="c">
<!-- ###navMenuFooter### -->
<li><a href="#index" data-direction="reverse">Полная версия</a></li>
<li><a href="http://www.google.com/" data-rel="external">Google Me</a></li>
<li><a href="http://www.hongkiat.com/" data-rel="external">условаия перепечатки материалов</a></li>
<li><a href="/" data-rel="external">обмен ссылками</a></li>
<li><a href="/sitemap/" data-rel="external" data-transition="pop" class="ui-btn-active ui-state-persist">карта сайта</a></li>
<!-- ###navMenuFooter### -->
</ul>
</div>
<h5 style="font-size: 14px;">Официальный сайт Студенческого совета НОУ ВПО «Академии МНЭПУ»<br />
Информационный центр совета - сайт создан в 2010 году<br />
Сайт модернзирован в 2012 году</h5>
</div><!-- /header -->
</div><!-- /page -->
<!-- ###DOCUMENT_BODY_MOBILE### -->
</body>
</html>
document-ready.m.js
//Выстрелил в конце концов загрузки страницы и переходы. - только так это получилось поставить...
//Это исправляет этот баг - 3. при загрузке моб. версии сайта при первом посещении страницы (без кэша - не открывается увеличивание картинок...)
//на ссылках обязательно должен стоять rel="external
//+ обязателен порядок подключения файов klass.min - code.photoswipe-3.0.5.min - document-ready.m
$(document).bind('pagechange', function(e) {
//это тоже обязательно
$('div.content').each(function(){
var myPhotoSwipe = $("a.imageZoom").photoSwipe({ });
});
});
Вот тоже не понятно - кроме того, что поменяли концепцию localconf - зачем надо было логику строк для модулей расширений менять
Многие расширения, которые Вы качаете из репозитария для старых версий тупо3 - не работают при первом запуске в 4.5-4.7 и 6.0...
НО Если Вы меняете в модуле исходных кодах строку
$headerSection = $this->doc->getHeader('pages',$this->pageinfo,$this->pageinfo['_thePath']).'<br />'.$LANG->sL('LLL:EXT:lang/locallang_core.xml:labels.path').': '.t3lib_div::fixed_lgd_pre($this->pageinfo['_thePath'],50);
на
$headerSection = $this->doc->getHeader('pages',$this->pageinfo,$this->pageinfo['_thePath']).'<br />'.$LANG->sL('LLL:EXT:lang/locallang_core.xml:labels.path').': '.t3lib_div::fixed_lgd_cs($this->pageinfo['_thePath'],-50);
Но у меня не всегда срабатывает -
поэтому этот getHeader всегда закомментирую - и все работает
http://blog.joergboesche.de/typo3-ersatz-fuer-kernklasse-und-funktion-t3lib_divfixed_lgd_pre-in-version-4-6
http://www.codeterrorizer.com/t3-extension-development/typo3-ke_troubletickets-call-to-undefined-method-t3lib_divfixed_lgd_pre
Никак не пойму в 6.0 появился Drag and Drop элементов контента на страницах в BE по умолчанию?
По аналогии grid elements?
Да - все таки обидно что typo3 6.0 - выбрала для себя такое печальное будущее - а самое печальное что это уже ход развития всего следующего 6.x и даже 7,8,9 - что они будут это толкать вниз...
И ведь даже любимые расширения не поставишь...
http://demo.typo3.org/typo3/backend.php
- посмотрел и действительно не вижу никаких улучшений чего-либо в BE.
Даже модуль "Страница" стал каким-то не жизнерадостным:confused:...
Ну да добавили еще какие-то маленькие фишечки.
И это время ребята потратили на ради того, что бы код переписать с "0" - а смысл - не ужели у них не хватает идей по улучшению данной CMS - ведь примеров достаточно - а материала хоть отбавляй - открывай другие CMS и смотри в чем их конкурентноспособность?
--
В общем наступило - но как-то похоронно...
dmartynenko
21.02.2013, 11:49
Этого стоило ожидать. Пришли новые люди, посмотрели старый код, подумали "некрасиво" и решили все переписать.
На самом деле переписыванием ядра занимаются давно (если не всегда). Если посмотреть PHP код формирования cObject в 4.1 и 4.5 - то это совершенно разные вещи. А с точки зрения FE/BE практически одно и тоже.
Будем надеяться что это просто шаг к реализации чего-то действительно нового. А то ведь TYPO3 NEOS это тоже же самое, но совсем по другому.
http://castironcoding.com/resources/our-blog/sp/view/single/post/reason-9-for-choosing-typo3-fluid-templating-engine.html
Я в английском не силен, но вроде как в этой статье есть что то оптимистичное
Андрей Аксенов
21.02.2013, 17:29
я не понял, эта тема о том, как все плохо, или о том - как кто мается?
Сейчас я вижу - ну все, гавно все это TYPO3 6... без объяснений причин (ну вы все крутые пацаны - должны понять, и, поддержать)...
Ну так вот, все работает, не поленитесь почитать, что не так... Это в ошибках... Скорее всего расширения.
Далее, если не так, как привыкли, ну что же... Объясните - что лучше, что хуже... По-русски...
Привычка - не приговор, делитесь мнениями....
Поделюсь своим скромным мнением, сделал несколько сайтов на 6-ке. Для шаблонизации в одном использовал TemplaVoila, в остальных Fluid.
Особых проблем в работе ни с системой ни с экстами не увидел, ну если что-то где-то подправить нужно.
Extbase - прогрессирует, названия классов стали короче. Используется пространство имен, эксты становятся похожи на FLOW3-шные пакеты. Отсюда видна тенденция. Не поленитесь, поиграйтесь с FLOW3.
Мое мнение - всё не плохо. Вот здесь про FAL наглядго. http://typo3.org/fileadmin/t3org/images/FM-content/releases/TYPO3_6-0/20121122-TYPO3-6.0-Whats-New.pdf
Возможна ли миграция существующего сайта с TV на Fluid?
В разметке дизайна всего один элемент контента.
FCE на сайте отсутствуют
Как быть с "отсоединенными", но не скрытыми и не удаленными элементами контента. Они получается все станут видимыми?
А чем GE (gridelements) плох - ведь TV - очень сложная.
И потом по опыту могу сказать - что если структура сайта шаблонов не очень сложная - и можно обойтись без IF-ов - то fluid-это лишнее, а вот для создания форм и валидации - FLuid очень даже подходит!
Андрей Аксенов
22.02.2013, 12:12
Возможна ли миграция существующего сайта с TV на Fluid?
В разметке дизайна всего один элемент контента.
FCE на сайте отсутствуют
Как быть с "отсоединенными", но не скрытыми и не удаленными элементами контента. Они получается все станут видимыми?
Конечно возможно. Создаете новый шаблон на флюид - по разметке совпадающий со старым и указываете область, куда должны "проецироваться" элементы содержимого.
С отсоединенными элементами не сталкивался, но что мешает попробовать применить шаблон для пробной страницы с такими элементами? Заодно и опишите ваш опыт здесь... Документации по "миграции" с одного шаблонизатора на другой нет, поэтому - "опыт, сын ошибок трудных".
Андрей Аксенов
22.02.2013, 12:22
А чем GE (gridelements) плох - ведь TV - очень сложная.
И потом по опыту могу сказать - что если структура сайта шаблонов не очень сложная - и можно обойтись без IF-ов - то fluid-это лишнее, а вот для создания форм и валидации - FLuid очень даже подходит!
Темплавуаля не сколько сложная, но я бы сказал, непредсказуемая. Особенно при обновлениях сайта и переходе, скажем, на другой хостинг. Там есть возможность выбора места хранения структуры сайта - в файлах или в БД, но иногда, опять же, по опыту, проскакивают непонятные ошибки в виде не найденного шаблона. К тому же, без костылей невозможно указать несколько мест хранения структур данных и объектов, да и документации, подробно раскрывающей все хитрости нет. Хотя, что касается "хитростей" документации нет и по бОльшей части TYPO3.
Что касается использования флюид - по своему опыту могу сказать, мне понравилось. И простые шаблоны, и сложные, но с использованием вставок из TS. Пока флид, несмотря на восторженные отклики, без TS многого сделать не может.
Но я надеюсь на лучшее, тем более тенденция уже видна, поэтому - делать нечего, только вперед.
Ну а огромный минус, и о нем уже говорилось, частая смена основы - версий флюид и эксбейз. Меняются названия классов и т. п. - а сайт перестает работать при обновлении без объявления войны... Это так, я сталкивался.
dmartynenko
22.02.2013, 12:59
Вот здесь про FAL наглядго. http://typo3.org/fileadmin/t3org/images/FM-content/releases/TYPO3_6-0/20121122-TYPO3-6.0-Whats-New.pdf
Спасибо. Такого еще не видел. В других местах пишут только что FAL это круто, а как пользоваться не понятно.
А старый typo3 - сайт был как-то по круче...
В плане идей и удобства использования...
http://forge.typo3.org/issues/11391
А старый typo3 - сайт был как-то по круче...
В плане идей и удобства использования...
http://forge.typo3.org/issues/11391
Полностью разделяю Вашу точку зрения в этом плане и считаю, что по сути Typo3 не развивается, толстеет обрастает фичами, но принципиально ничего нового - "Те же яйца, только сбоку". :(
Как понял - вышла новая версия typo3 TYPO3 CMS 6.1.
Все перерыл - но не нашел презентации о том, что в нее нового добавили...
Не поделитесь ссылочкой, если кто нашел...:)
dmartynenko
17.04.2013, 19:21
Откуда дровишки?
В новостях было только про бету: http://typo3.org/news/article/typo3-cms-610-beta-1-released/
Там же есть про изменения.
По графику релиз на 30 апреля запланирован. http://typo3.org/news/article/typo3-cms-61-improve/
Но как обычно будет позже.
А я думал уже...
15 дней значит осталось...
Особенно заинтересовало вот Это:
Extensions
Make the process of extension handling even easier and flexible (we will see what that will mean ;-))
Build a compatibility layer for outdated extensions, new documentation on best practices for extensions (work in progress, see
Что то - про расширения (как-то изюм...)
dmartynenko
17.04.2013, 19:53
Скорее всего будет краткий гид, как рефакторить существующие расширения для работы с 6.x :cool:
Здравствуйте
Я в Typo3 новичок.
Почитал тему, но честно говоря так и не понял, как обновиться с 4.5 до 6.1 версии
Пробовал, как тут: http://typo3.org/documentation/document-library/guides/doc_guide_install_ru/2.1.0/view/1/4/
на шаге 3 выскакивают ошибки
Если есть какие нибудь инструкции, или личный опыт в обновлении, не могли бы вы поделиться, буду признателен)
А есть причины, по которым вам нужна 6.1 версия? :)
Я вот пока не нашел таковых, вроде всё что умеет 6.1 - можно сделать на 4.5. Кроме того, как мне показалось со стабильностью у 6.1 есть проблемы.
Через месяц 6.2 выпустят. Может Что то кардинально поменяется?
Очень сомневаюсь, как мне кажется, развитие typo3 остановилось, внедряют новые технологии, которые ничего нового не вносят. Грубо говоря - те же яйца, только сбоку (ну еще и требования к ресурсам выше)
Андрей Аксенов
08.10.2013, 11:53
Обновил уже ни один сайт на версию 6.x. Проблемы во всех случаях бывали из-за старых расширений. В шестой версии используются другие функции, и приходится обращать на это внимание, кроме того, возможны ошибки из-за подключения файлов локализации - все решается правкой кода этих расширений. Для этого нужно включить отображение ошибок php. Ну а затем по ошибке вносить изменения.
При обновлении полезен этот документ: http://wiki.typo3.org/TYPO3_6.0#Upgrading_issues
Список устаревших функций с советами по из замене: http://wiki.typo3.org/TYPO3_6.0_Extension_Migration_Tips
Кроме того, нужно убедиться, что все использованные изображения также были перенесены (не возникает ошибок об отсутствующих файлах и т.п.). В 6.x версии директория uploads уже не используется для хранения файлов расширений, из нее и из typo3temp все переносится в fileadmin/_migrated, fileadmin/_migrated_ и т. п.
Вообщем - нужно отлаживать, смотря по возникающим ошибкам.
Спасибо Андрей что расписали всё, это следовало бы в какой то теме закрепить. Но главный вопрос.
Ради чего всё это нужно было, была острая необходимость в обновлении системы, Вы использовали какие то новые расширения, которые не умеют работать со старым API?
Андрей Аксенов
08.10.2013, 12:11
Да, я сейчас перехожу на шаблоны Fluid и технологию на базе Flux - вот как раз она то в скорости будет переезжать на новую ветку TYPO3.
Хотя и на четвертой версии все работает пока замечательно. А шестая, к сожалению, не свободна от некоторых глюков, старые расширения на ней работают замечательно, после исправлений в используемых старых функциях, но вот заметил, что там что-то произошло с кешированием - кое что никак не могу заставить работать - были ошибки при постраничном разбиении списка в каком-то самописном расширении, там используется chash, а само расширение user_int. И заставить работать это расширение я так и не смог, подозреваю, что виной всему что-то внутри новой TYPO3...
Требования, действительно, возросли - и к базе данных, и к версии PHP. На наших хостингах (nic.ru, 1gb и т.д.) все работает с трудом и для старых версий 4.x, в чем убеждался ни раз, а уж шестая версия еще пожирнее будет...
Вообщем, причина моего перехода - скорее личный интерес, но версия 4.x работает замечательно, и на ней у меня тоже кое-что крутится.
Некоторые новые расширения требуют версию не ниже 6.х, тем не менее другие наверно уже не обновляться.
Эти новые расширения что то реально новое?
У тайпы тысячи расширений, многие дублируют друг друга. Что принципиально нового есть в расширениях, ради которых нужно обновлять систему (идти на жертвы).
ЗЫ Что то в моих речах много консерватизма :)
Спасибо за ответы
Да, нужда в обновлении имеется.
Если я правильно понял, делаем все как тут:
http://typo3.org/documentation/document-library/guides/doc_guide_install_ru/2.1.0/view/1/4/
на шаге 3 выскакивают ошибки, их исправляем, ориентируясь на:
http://wiki.typo3.org/TYPO3_6.0#Upgrading_issues и
http://wiki.typo3.org/TYPO3_6.0_Extension_Migration_Tips
перезагружаем странички, ошибки исчезают, и делаем далее по инструкции)
Uncaught TYPO3 Exception
#1231267498: Invalid cache backend option "cacheTable" for backend of type "TYPO3\CMS\Core\Cache\Backend\Typo3DatabaseBackend" (More information)
InvalidArgumentException thrown in file
S:\home\vs.loc\www\typo3\sysext\core\Classes\Cache \Backend\AbstractBackend.php in line 86.
7 TYPO3\CMS\Core\Cache\Backend\AbstractBackend::__co nstruct("production", array)
S:\home\vs.loc\www\typo3\sysext\core\Classes\Cache \CacheFactory.php:
00083: // bootstrap before makeInstance() is propely set up
00084: $backendObjectName = '\\' . ltrim($backendObjectName, '\\');
00085: $backend = new $backendObjectName($this->context, $backendOptions);
00086: if (!$backend instanceof \TYPO3\CMS\Core\Cache\Backend\BackendInterface) {
00087: throw new \TYPO3\CMS\Core\Cache\Exception\InvalidBackendExce ption('"' . $backendObjectName . '" is not a valid cache backend object.', 1216304301);
6 TYPO3\CMS\Core\Cache\CacheFactory::create("tt_news_cache", "TYPO3\CMS\Core\Cache\Frontend\VariableFrontend", "t3lib_cache_backend_DbBackend", array)
S:\home\vs.loc\www\typo3\sysext\core\Classes\Cache \CacheManager.php:
00318: $backendOptions = $this->defaultCacheConfiguration['options'];
00319: }
00320: $this->cacheFactory->create($identifier, $frontend, $backend, $backendOptions);
00321: }
00322:
5 TYPO3\CMS\Core\Cache\CacheManager::createCache("tt_news_cache")
S:\home\vs.loc\www\typo3\sysext\core\Classes\Cache \CacheManager.php:
00121: }
00122: if (!isset($this->caches[$identifier])) {
00123: $this->createCache($identifier);
00124: }
00125: return $this->caches[$identifier];
4 TYPO3\CMS\Core\Cache\CacheManager::getCache("tt_news_cache")
S:\home\vs.loc\www\typo3\sysext\core\Classes\Cache \Cache.php:
00079: $tableDefinitions = '';
00080: foreach ($GLOBALS['TYPO3_CONF_VARS']['SYS']['caching']['cacheConfigurations'] as $cacheName => $_) {
00081: $backend = $GLOBALS['typo3CacheManager']->getCache($cacheName)->getBackend();
00082: if (method_exists($backend, 'getTableDefinitions')) {
00083: $tableDefinitions .= LF . $backend->getTableDefinitions();
3 TYPO3\CMS\Core\Cache\Cache::getDatabaseTableDefini tions()
S:\home\vs.loc\www\typo3\sysext\install\Classes\In staller.php:
04986: \TYPO3\CMS\Core\Utility\ExtensionManagementUtility ::removeCacheFiles();
04987: // Forces creation / update of caching framework tables that are needed by some update wizards
04988: $cacheTablesConfiguration = implode(LF, $this->sqlHandler->getStatementArray(\TYPO3\CMS\Core\Cache\Cache::get DatabaseTableDefinitions(), 1, '^CREATE TABLE '));
04989: $neededTableDefinition = $this->sqlHandler->getFieldDefinitions_fileContent($cacheTablesConfig uration);
04990: $currentTableDefinition = $this->sqlHandler->getFieldDefinitions_database();
2 TYPO3\CMS\Install\Installer::updateWizard()
S:\home\vs.loc\www\typo3\sysext\install\Classes\In staller.php:
00547: $this->checkDatabase();
00548: $this->silent = 0;
00549: $this->updateWizard();
00550: break;
00551: case 'config':
1 TYPO3\CMS\Install\Installer::init()
S:\home\vs.loc\www\typo3\install\index.php:
00058: require_once \TYPO3\CMS\Core\Utility\ExtensionManagementUtility ::extPath('install') . 'mod/class.tx_install.php';
00059: $install_check = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstan ce('TYPO3\\CMS\\Install\\Installer', TRUE);
00060: $install_check->init();
00061: ?>
на 3-ем шаге вот такие ошибки, далее не идет.
Смотрю функции в списке устаревших - их там нет
Подскажите пожалуйста, что сделать в этой ситуации?
Уже не первый раз сталкиваюсь с подобным, когда есть потребность обновить систему.
Один раз попробовал обновиться ради интереса... В итоге ни к чему хорошему это не привело. Надо либо делать сайт на новой ветке (6-ая), либо продолжать на старой (какая есть)... В итоге - откатил изменения.
--
В шестой мне понравилось только FAL. А в остальном все что нужно есть и в старых ветках. Из того, что не понравилось - у меня после установки чистой копии шестой-ветки на хостинг - админка открывается еле - еле... А wininstaller - шестой ветки, после трех-четырех шелчков мышкой - вешает wininstaller.
И потом typo3.org - работает на старых ветках...:)
<meta name="generator" content="TYPO3 4.5 CMS" />:)
По поводу расширений - да есть, которые не совместимы уже сегодня со старыми версиями...
Но это в процентом соотношении в репозитории - малая доля...
Иногда старое, лучше нового - и такое бывает.
В общем пока не использую 6-тые ветки в разработке проектов.
Вот когда она будет "летать" - хотя бы как метро - 55 км.в час...
Да и то, это сверхскорость в условиях мегаполиса.
http://fototelegraf.ru/wp-content/uploads/2011/05/tunneli-metro.00-830x553.jpg
:rolleyes:
Да, я сейчас перехожу на шаблоны Fluid и технологию на базе Flux - вот как раз она то в скорости будет переезжать на новую ветку TYPO3.
Хотя и на четвертой версии все работает пока замечательно. А шестая, к сожалению, не свободна от некоторых глюков, старые расширения на ней работают замечательно, после исправлений в используемых старых функциях, но вот заметил, что там что-то произошло с кешированием - кое что никак не могу заставить работать - были ошибки при постраничном разбиении списка в каком-то самописном расширении, там используется chash, а само расширение user_int. И заставить работать это расширение я так и не смог, подозреваю, что виной всему что-то внутри новой TYPO3...
Требования, действительно, возросли - и к базе данных, и к версии PHP. На наших хостингах (nic.ru, 1gb и т.д.) все работает с трудом и для старых версий 4.x, в чем убеждался ни раз, а уж шестая версия еще пожирнее будет...
Вообщем, причина моего перехода - скорее личный интерес, но версия 4.x работает замечательно, и на ней у меня тоже кое-что крутится.
Все-таки очень интересна тема FLUID, FLUX - но вот найти по ней, к сожалению ничего путного в плане документаций и примеров - не получается... Говорят "офигенно - мы делаем сайты на FLUID/FLEX", так же как и на FLOW... Но вот почитать что-то, что бы разобраться, что куда "втыкать и с чего начинать"?
И еще интересно, насколько это все дело сложнее print "Hellow world"; - а также где стоит extbase и какую нишу он занимает?
Fatal error: Cannot access protected property TYPO3\CMS\Core\Database\DatabaseConnection::$link in S:\home\vs.loc\www\typo3conf\ext\realurl\class.tx_ realurl.php on line 230
С таким сталкивался кто нибудь?
Андрей Аксенов
11.10.2013, 11:28
Fatal error: Cannot access protected property TYPO3\CMS\Core\Database\DatabaseConnection::$link in S:\home\vs.loc\www\typo3conf\ext\realurl\class.tx_ realurl.php on line 230
С таким сталкивался кто нибудь?
А расширения обновляли? Если нет, то обновите.
Также удаляйте все во временной папке - там возможно осталось что-то кешированное от старой версии...
Вообщем бубен в руки, и танцуйте, танцуйте :)) ...
Андрей Аксенов
11.10.2013, 11:34
Все-таки очень интересна тема FLUID, FLUX - но вот найти по ней, к сожалению ничего путного в плане документаций и примеров - не получается... Говорят "офигенно - мы делаем сайты на FLUID/FLEX", так же как и на FLOW... Но вот почитать что-то, что бы разобраться, что куда "втыкать и с чего начинать"?
И еще интересно, насколько это все дело сложнее print "Hellow world"; - а также где стоит extbase и какую нишу он занимает?
Ну что значит, не удавалось найти... я уже давал, по моему, в другом обсуждении эти ссылки:
https://fedext.net/
http://wiki.typo3.org/Fluid
Ну и где-то была ссылка на мой перевод книги "Разработка расширений для TYPO3 на базе Extbase и Fluid" (https://docs.google.com/file/d/0ByAXdHKcjipLTnh3WmVQN0tPdzQ/edit?usp=sharing)...
Но тут, как обычно, без практики - никуда... Попробуйте сделать какой-нибудь сайт без темплавуаля, на базе новых шаблонов Fluid.
Ну что значит, не удавалось найти... я уже давал, по моему, в другом обсуждении эти ссылки:
https://fedext.net/
http://wiki.typo3.org/Fluid
Ну и где-то была ссылка на мой перевод книги "Разработка расширений для TYPO3 на базе Extbase и Fluid" (https://docs.google.com/file/d/0ByAXdHKcjipLTnh3WmVQN0tPdzQ/edit?usp=sharing)...
Но тут, как обычно, без практики - никуда... Попробуйте сделать какой-нибудь сайт без темплавуаля, на базе новых шаблонов Fluid.
ООООО
Спасибо, Андрей. Вот теперь реально есть что почитать по extbase....
На досуге как ни будь почитаю - т.сказать для расширения кругозора, что бы понимать хотябы что это.... С FLUID-и так понятно.
Но, к сожалению - не знаю на сколько он приживется в моем сознании (typo3 + практическое решение задач) - к сожалению...
И думаю - это даже маловероятно.
--
Не знаю кто, как - а лично у меня ушло довольно много времени, что бы понять хотя бы вот это в typo3:
page = PAGE
page.typeNum = 0
page.10 = TEXT
page.10.value = Hi,,,
Очень долго не понимал, наверное недели две или три, что это и зачем...
Уже не говорю про extbase.
Но по прождему очень инетересует тема (даже больше чем extbase) - FEDa
https://fedext.net/ - понимаю - у них красивая главная страница, которая выедает всю оперативную память моего мозга... Но сколько раз ни заходил, ни пойму даже с чего начнать изучение и знакомство:
интересует возможности настройки BE
интересуют возможности по выводу во FE...
--
По идее во всех нормальных документациях, хотя бы пример расширения выкладывают с hellow world. - а здесь куча куча всяких кодов...
--
Как-то так.
Еще раз спасибо за extbase - его помаленьку прочитаю, что бы понять что это...
--
По поводу FLOW3 - думаю, как ни будь уже на потом.
Андрей Аксенов
13.10.2013, 21:07
Но по прождему очень инетересует тема (даже больше чем extbase) - FEDa
https://fedext.net/ - понимаю - у них красивая главная страница, которая выедает всю оперативную память моего мозга... Но сколько раз ни заходил, ни пойму даже с чего начнать изучение и знакомство:
интересует возможности настройки BE
интересуют возможности по выводу во FE...
--
По идее во всех нормальных документациях, хотя бы пример расширения выкладывают с hellow world. - а здесь куча куча всяких кодов...
--
Как-то так.
Еще раз спасибо за extbase - его помаленьку прочитаю, что бы понять что это...
--
По поводу FLOW3 - думаю, как ни будь уже на потом.
Ну не знаю... Вроде сайты делаете... С первой страницы fedext.net предлагается перейти далее, а там есть и разъяснение для новичков, и справочник по fluid, и краткая характеристика расширений.
Еще полезно новости и журнал почитать - дельно и с разъяснениями. Журнал, кстати, для себя перевел, действительно дельно.
Было бы желание, остальное - приложится.
А с чего начинать, я уже говорил, с практики.
Ну не знаю... Вроде сайты делаете... С первой страницы fedext.net предлагается перейти далее, а там есть и разъяснение для новичков, и справочник по fluid, и краткая характеристика расширений.
Еще полезно новости и журнал почитать - дельно и с разъяснениями. Журнал, кстати, для себя перевел, действительно дельно.
Было бы желание, остальное - приложится.
А с чего начинать, я уже говорил, с практики.
FLUID - понятно
EXTBASE - читаю и понимаю
FEDEX - не понятно, что это и как...
--
По этой причине - ищу документацию по FEDEX.
Как сделать Hellow world.
https://fedext.net/ - здесь ничего не написано по Hellow wordl... По крайней мере не нашел.
Да и кстати - т.к. в новых 6.x- версия появился FAl...
Как понял для них появился специальных объект - что то типа FILES
Андрей Аксенов
15.10.2013, 13:44
FLUID - понятно
EXTBASE - читаю и понимаю
FEDEX - не понятно, что это и как...
--
По этой причине - ищу документацию по FEDEX.
Как сделать Hellow world.
https://fedext.net/ - здесь ничего не написано по Hellow wordl... По крайней мере не нашел.
Чаво непонятно-то? Затыка где? Мож сгожусь чем?
Если что, то вот это: skladsistem.ru работает полностью на FEDEXT, и TYPO3 4.5...
А вот свое творение (http://webdesign.gep-art.com/) до сих пор еще перевожу под новую версию и FLUID, так что перебои в работе - это я шалю :)
Если есть дельные вопросы, с удовольствием отвечу.
Чаво непонятно-то? Затыка где? Мож сгожусь чем?
Если что, то вот это: skladsistem.ru работает полностью на FEDEXT, и TYPO3 4.5...
А вот свое творение (http://webdesign.gep-art.com/) до сих пор еще перевожу под новую версию и FLUID, так что перебои в работе - это я шалю :)
Если есть дельные вопросы, с удовольствием отвечу.
Суть вопроса - как у Вас выводиться страница на этих расширениях?
Как это делается через стандартный TEMPLATE , или Templavoila - это понятно...
А вот как это идет на FLUID, FEDEX, VSH и FLUX...
Интересен просто пример.
Вот это стандартный вывод страницы через TEMPLATE
# Default PAGE object:
page = PAGE
# Define the template
page.10 = TEMPLATE
# Define the subparts, which are inside the subpart DOCUMENT
page.10.subparts {
}
page.10.marks {
}
Аналогично для Templavoila
--
А как у FEDEX - работает?
Андрей Аксенов
15.10.2013, 14:14
Как бы тут сказать...
Подключаю шаблон fluidpages
Затем подключаю шаблон своего расширения-шаблона fluidpage_foundation, можно и общедоступный fluidpages_bootstrap - это всего лишь шаблон, написаный на fluid, где и используются преимущества vhs, flux и т. п., передаваемый далее во fluidpages, который и занимается выводом страницы по шаблону.
Преимущества flux - я могу подключать в заголовок документа что угодно (css, meta, javascript), причем определять зависимость - какой-либо сценарий ява зависит, скажем, от подключения jquery, указывыем это... и т. п.
Конечно, еще не все так радужно, но получается очень даже ничего...
Да, у себя пытаюсь воспроизвести http://foundation.zurb.com/ , аналога http://getbootstrap.com/ - по-моему все неплохо получается...
Вот как-то так, ну и еще, необходим css_styled_content для вывода содержимого...
Чаво непонятно-то? Затыка где? Мож сгожусь чем?
А вот свое творение (http://webdesign.gep-art.com/) до сих пор еще перевожу под новую версию и FLUID, так что перебои в работе - это я шалю :).
Ну или хотя бы хочется понять - чем он на столько лучше, чем есть уже существующее, что Вы переводите на данные расширения свой проект...
--
Я в свое время к сожалению отказался от TV, и перешел на стандартный TEMPLATE + Gridelements...
Как бы тут сказать...
Подключаю шаблон fluidpages
Затем подключаю шаблон своего расширения-шаблона fluidpage_foundation, можно и общедоступный fluidpages_bootstrap - это всего лишь шаблон, написаный на fluid, где и используются преимущества vhs, flux и т. п., передаваемый далее во fluidpages, который и занимается выводом страницы по шаблону.
Преимущества flux - я могу подключать в заголовок документа что угодно (css, meta, javascript), причем определять зависимость - какой-либо сценарий ява зависит, скажем, от подключения jquery, указывыем это... и т. п.
Конечно, еще не все так радужно, но получается очень даже ничего...
Да, у себя пытаюсь воспроизвести http://foundation.zurb.com/ , аналога http://getbootstrap.com/ - по-моему все неплохо получается...
Вот как-то так, ну и еще, необходим css_styled_content для вывода содержимого...
В общем думаю, что тогда придется изучать на основе демо-сайта - Wininstaller... - По другому не вижу, как это можно сделать...
Вот этого пакета: TYPO3 CMS - Bootstrap Package:)
Андрей Аксенов
15.10.2013, 14:27
ну вроде того...
Может поможет еще мой сумбурный перевод заслуживающих, с моей точки зрения, вещей с сайта (https://docs.google.com/document/d/11haOXnceZk1QApCaxSZLO8Ej5LpC9A3BMGQYbEMjHG4/edit?usp=sharing).
Ну а вообще - да, посмотрите настройки демо-сайта, разберетесь, там нет ничего сверхсложного, разве что нужно будет потренироваться в синтаксисе fluid, но и это увлекательно :)
ну вроде того...
Может поможет еще мой сумбурный перевод заслуживающих, с моей точки зрения, вещей с сайта (https://docs.google.com/document/d/11haOXnceZk1QApCaxSZLO8Ej5LpC9A3BMGQYbEMjHG4/edit?usp=sharing).
Ну а вообще - да, посмотрите настройки демо-сайта, разберетесь, там нет ничего сверхсложного, разве что нужно будет потренироваться в синтаксисе fluid, но и это увлекательно :)
http://vimeo.com/74074511
Что и требовалось - хотя бы понять для начала...:)
ну вроде того...
Может поможет еще мой сумбурный перевод заслуживающих, с моей точки зрения, вещей с сайта (https://docs.google.com/document/d/11haOXnceZk1QApCaxSZLO8Ej5LpC9A3BMGQYbEMjHG4/edit?usp=sharing).
Ну а вообще - да, посмотрите настройки демо-сайта, разберетесь, там нет ничего сверхсложного, разве что нужно будет потренироваться в синтаксисе fluid, но и это увлекательно :)
Судя по всему в extbase - функций для работы с БД - хотя бы что - то вроде ORM-фреймворка - не имеется, либо возможно плохо искал читая книгу. Не совсем пойму, как люди выводят подобные модели - все пишут в ручную при разработке TYPO3-расширений?
http://blog.dotpulse.ch/wp-content/uploads/2012/08/00.png
Fedex-по прежнему актуален.
Андрей Аксенов
28.10.2013, 23:06
В ручную - это уже потом, а основной каркас, все верно - при помощи экстеншн билдера, замечательная вещь.
Запросы к БД там есть, но они выполняются в репозитории, об этом в книге есть...
В ручную - это уже потом, а основной каркас, все верно - при помощи экстеншн билдера, замечательная вещь.
Запросы к БД там есть, но они выполняются в репозитории, об этом в книге есть...
Про буилдер да-вещь полезная.
Не совсем понял , что имеется в виду - "но они выполняются в репозитории"
По идее же репозиторий - это репозиторий, а extbase - это extbase - на сайте...?
Андрей Аксенов
28.10.2013, 23:20
Посмотрите глава 5 "Настройка слоя хранения" и там 3. Отдельные запросы к БД.
Ну а еще - на примере какого-нить расширения на extbase, тот же news или тестовое расширение, о котором идет речь в книге...
Внутри репозитория будет что-то вроде:
public function findInRegion(Tx_SjrOffers_Domain_Model_Region $region) {
$query = $this->createQuery();
$query->matching($query->contains('regions', $region));
return $query->execute();
}
Посмотрите глава 5 "Настройка слоя хранения" и там 3. Отдельные запросы к БД.
Ну а еще - на примере какого-нить расширения на extbase, тот же news или тестовое расширение, о котором идет речь в книге...
Внутри репозитория будет что-то вроде:
public function findInRegion(Tx_SjrOffers_Domain_Model_Region $region) {
$query = $this->createQuery();
$query->matching($query->contains('regions', $region));
return $query->execute();
}
Прочитал Вашу книгу.
В общем - как ни странно, ничего плохово в extbase не нашел, как его критикуют обычно и как у меня сложилось мнение, что это "лажовый проект"... Все довольно логично. Единственное конечно как показалось, наверное он очень сыроват еще для "быстрой разработки". Они работают над интерфейсами кикстартера, что очень радует. И extbase - есть развитие flow3 - в настоящем.
С точки зрения изучения конечно очень сложновато. Что бы разобраться в этом детально, мне наверное еще раз пять придется прочитать книгу:)
В книге не пойму - там идет речь о Grid Element - это что такое? там имеется в виду?
Grid Elements - это расширение которое позволяет создавать дополнительные элементы, например колонки. Нечто вроде FCE, но без TemplaVoila http://typo3.org/extensions/repository/view/gridelements
Grid Elements - это расширение которое позволяет создавать дополнительные элементы, например колонки. Нечто вроде FCE, но без TemplaVoila http://typo3.org/extensions/repository/view/gridelements
Думал что в extbase - что то свое создали...:)
Поэтому и уточнил на всякий случай.
Андрей Аксенов
05.11.2013, 16:55
Все развивается... В версии 6 никаких зеленых элементов, все уже есть в ядре...
Огогоооо....
TYPO3 7.0.1
http://www.youtube.com/watch?v=_Pjt-_eyFAw#t=88
Наверное будет очень крутой BE-с таким юзабилити...:):):)
FLOW3, NEWS, TYPO3 7-ветка....
Честно признаться, посмотрел 6. детально, в т.ч. со всякими Fedex Fluid - и прочее - ветку... По производительности к сожалению сказать ничего не могу, т.к. особо разницы не заметил, что между 4.7, что между 6.2... По идее FE-работает также... А значит (думаю), что и если много страниц будет, то будет работать также!
Но, могу сказать, что это круто! И это мягко сказано.
http://cs304700.vk.me/u133380628/-14/x_2bd4db66.jpg
Единственное, конечно расстроило то, что старый менеджер расширений убрали...
И до сих пор не могу понять, почему TYPO3 - к примеру в сравнеии с Joomla, или Drapul / Modx
- занимает такую низкую долю популярности (хотя бы в России)
Для меня
Joomla - сложный для восприятия BE
Drupal - не понял вообще как этим пользоваться (наверное сказалось отсутствием большого обилия кнопочек в BE)
Modx - у меня не поставился с первого раза, и как ни пробовал ее запустить, так ничего и не вышло.
Андрей Аксенов
20.12.2013, 15:14
В 6.2 обещают много вкусностей (перевожу слайды презентации), недаром ее выход отложили на три месяца...
Поддержка адаптивных изображений через цсс_стайлед_контент, вложение наследование ts кода в файлах и т. д. Упрощение перехода со старых версий, наборы предустановок (для разработки, для работающего сайта и т.п.), предустановка работы с графикой и системным окружением...
Но вот производительность пока не радует, да и пробовал поставить на некоторые из своих сайтов - далеко не везде все прошло хорошо. Звучит, конечно, все круто, но вот скажем обработка графики не настроилась о другом сложно судить, но, думаю, не лучше...
Чем дальше в лес...
Надеюсь, что за оставшиеся три месяца допилят.
Хотя нет, пожалуй вру....
У меня http://fluid.ivan-web-blog.ru/index.php?id=1 по данному адресу при нагрузочном тестировании - сайт то вешается, то не вешается...
Internal Server Error
Интересно, что они там такого сделали в ядре, что такой долгий процесс загрузки...
Було бы круто, если бы добавили в старые версии новый модуль страница и FAL-для файлов - и тогда бы смысла переходить на 6 тую уже не было абсолютно... А если бы еще Neos - подключили бы к разработке чего-то нового и улучшения старого, так это бы было вообще супер.
И до сих пор не могу понять, почему TYPO3 - к примеру в сравнеии с Joomla, или Drapul / Modx
- занимает такую низкую долю популярности (хотя бы в России)
Для меня
Joomla - сложный для восприятия BE
Drupal - не понял вообще как этим пользоваться (наверное сказалось отсутствием большого обилия кнопочек в BE)
Modx - у меня не поставился с первого раза, и как ни пробовал ее запустить, так ничего и не вышло.
TYPO3 Сложна для освоения + непонятно как и что делать с шаблонами (учитывая множество различных вариантов с применением разных шаблонизаторов и без них). Только что поставившие систему просто теряются в ней.
Плюс еще непонятное словосочетание TypoScript.
Вдобавок совсем не тривиальная и простая админка - страницы отдельно, записи новостей и т.п. отдельно, где-то там надо вставлять элемент на страницу чтобы новости туда выводились, да еще и настраивать его. С настройками вообще непонятно как - можно настраивать прямо в плагине, можно через TS шаблон этой страницы, можно через TS родительской страницы, а можно TS вообще вынести в отдельный файл... А ведь еще есть TS файлы, которые идут вместе с экстом и часть настроек берется оттуда.
Учитывая все это действительно - система не простая и со своей нишей. Это не 5-страничные сайты визитки. Для этого может оказаться очень долгим процесс "погружения" в TYPO3.
Ну и традиционно "последний гвоздь" в крышку TYPO3 - отсутствие качественного и работающего из коробки расширения для магазина.
В остальных указанных вами системах они присутствуют, пусть разного качества, но есть. Хотя это уже темя для обсуждения в других ветках :)
Андрей Аксенов
20.12.2013, 17:34
Да, TYPO3 орешек не простой, но когда его раскусишь и начнешь пробовать... то остановиться невозможно :)
А так - шаблонов не так уж и много, учитывая, что настройке здесь поддается почти все... К тому же шаблоны-то настроек как раз организованы логично - действуют вниз по ветке страниц.
Что касается шаблонизаторов - кому что нравится, да и не так уж их и много: обычный, флюид, темплавуаля...
Другое дело, что документация немного запаздывает, да и сложно найти по конкретным вопросам что-то, так как настройка, скажем, изображений (тегов, водяных знаков и т.д.), seo, RTE разбросана по многим местам. Можно найти фрагменты кода, но без объяснения работы - обезьянье копирование. На то, чтобы понять нужно потратить оооочень много времени. Потом проще...
Забыли добавить настройку RTE :) еще один гвоздик в гробик.
Для себя сделал наметки по SEO-настройке, настройке внутреннего интерфейса для удобства работы, правила для настройки расширений и т. д. И их и придерживаюсь. То есть фрагменты, которые используются везде.
Вот как-то так...
D 2007-для своего первого сайта выбрал Joomla. Typo3 толи не смог установить, толи не понял что в ней делать нужно.... Все как у всех.
Через год перевел сайт на Typo3. Да, надо иметь некий "математический склад ума", чтоб понимать, как в ней работать, как создать сайт. Но даже редактирование сайта в тайпе такое интуитивное и понятное, чего нет в других системах.
Перед тобой страница, накоторую можно вставлять все, что хочеш и как хочеш. Есть дерево сайта.
А посмотрел я последнюю Joomla, так там с 2007-го я не заметил никаких существенных изменений. Все теже категории и центром является материал, в который никак не вставить например меню какких то страниц, которое само генерируется. Потом еще надо идти в меню и создавать ссылку на этот материал. И при этом много проблем с миграцией между версиями.
Modx - Наверно что-то среднее, есть дерево документов, есть общие пользователи(FE и BE в одном лице), которые могут формировать контент, есть аналог TypoScript-а(как я понял). Но в отличии от Typo3, где на странице могут находиться разные записи(что удобно), в Modx-е каждая запись является страницей в дереве, что наверно уже не удобно. Да и на странице одно текстовое поле, остальное надо создавать и конфигурировать отдельно.
Про NEOS не понял. На демо выглядит, как простенькая CMS, на презентации говориться, что на 90% фреимверк.
Вообщем, как для редактора - Typo3 идеал. Добавить бы сюда комьюнити функционал для FE-пользователей...
А когда будет Typo3 7?
Честно говоря про Modx - очень она мне понравилась (хотя я на ней и не делал), несмотря на то, что там нет такого понятия как "элемент страницы". Но вот что странно, она в России довольно популярна, а я даже "документации в Pdf" - файле не нашел!:) Шобы разом прочитать...
Про NEOS не понял. На демо выглядит, как простенькая CMS, на презентации говориться, что на 90% фреимверк.
Вообщем, как для редактора - Typo3 идеал. Добавить бы сюда комьюнити функционал для FE-пользователей...
А когда будет Typo3 7?
Neos - вообще в принципе не понимаю... Помоему это по уровню администрирования сайта - вообще очень не удобно.
7 - версия есть видео в сети...
Хотя смысл делать адаптивный дизайн BE-со всякими там штучками?
Лучше бы ушучшить то, что есть, а именно:
модуль список (аля как в битрикс)
визуальный редактор (яля CKeditor)
--
По идее в 7-мерке будет меняться интерфейс BE.
Вообщем, как для редактора - Typo3 идеал. Добавить бы сюда комьюнити функционал для FE-пользователей...
А что имеете ввиду под комьюнити функционал для FE?
Что-то вроде руководства?
А что имеете ввиду под комьюнити функционал для FE?
Что-то вроде руководства?
Что то вроде профайла/личного кабинета, который пользователь сам может настроить, возможности побликовать информацию. Есть несколько расширений, но они очень ограничены.
Ну и честно говоря, с точки зрения обратной совместимости хотя бы что ни будь с чем ...
это одна большая ЖЖЖЖЖЖООООООООООООООООООООООООООпа....
Из тех расширений, что когда то делал, ничего не работает...
Все требует учетах этих "скрытых новвоведений"...
Вот если бы перенести FAL-в typo3 4.7 , и новый модуль страница, системе бы цены не было. Прям та ки какая то мания у них сделать взбучку всему старому... И ведь самое обидное, что эти новвоведения и не перенесешь в старое.
Да и еще очень понравился новый localConfiguration!
Те хуки, которые используются, не один не работает!
Вот взять к примеру работу с БД:
// Есть же разница между этим
$library = new NotORM($pdo);
$books = $library->be_users()->select("uid, username")->where("uid > ?", 5);
// И тем, что нужно написать на TYPO3, либо на extbase
// А флуид - сломаешься пока прочитаешь его синтаксис...
Разрабатывать простой скрипт на Extbase - и на тех фрейворках которые они предлагаю,
к сожалению очень сложным являетя... а я еще в мыслях где-то не верил.:)
Так понимаю, вопрос надо ставить ребром - либо ты вливаешься в новое, либо остаешься в старом...
Интересно, и кто как выкручивается?
Может быть ошибаюсь:
но разве в Neos-е - не codeigniter является встроенным?
Андрей Аксенов
09.01.2014, 14:25
Вот, создал новую тему:
http://forum.typo3.biz/showthread.php?t=11120
TYPO3 на базе Fluid: документация
Там многое разжёвано относительно всей этой технологии и того, как ею пользоваться...
Докончу перевод в самое ближайшее время - самому все это интересно...
Одно знаю точно...
Что на TYPO3 6.1 - перешел в том числе по причинам...
1. FAL (встроенный по умолчанию - очень удобно)
2. Новый модуль страница (мультиколонки, мультисетки, табы,... и прочее) - делается довольно удобно.
3. Улучшение элементов TCA-форм (readOnly=1, выбор изображений/документов из медиабиблиотеки).
4. Новый localConfiguration.php - очень удобно!
5. Стабильные концепции Extbase + FLUID...
Если бы это все включили и развивалось в продолжение развития TYPO3 4.7.x-ветки...
То смысла обсалютно для себя переходить на шестую ветку даже и не вижу... Один FAL-стоит очень много - это очень круто!:)
--
Вот сколько не смотрю языки...
Есть таблица sys_language ... ?
Почему бы по умолчанию не сделать данную таблицу заполненной?
После уже какой язык нам нужен - мы его активируем...
Получается, что когда переводишь сайт - в одном проекте ID-русского языка может быть = 1
В то время как в другом ID-русского языка может быть = 4...
Однако так и запутаться не долго.
А как работать с FAL?
Нашел только одну документацию
http://wiki.typo3.org/File_Abstraction_Layer
Не совсем пойму, RTE-редактор
добавляет - вот такие строки:
data-htmlarea-file-uid="19" data-htmlarea-file-table="sys_file"
Ведь по идее же это ссылка на id-изображения, что бы взять описание...
А как такое же использовать в Typoscript-объекте?
Впечатления от Typo3 6.1 - одни положительные эмоции:):):).
Вот и мне довелось первый сайт сделать на этой системе - из трех страниц.:)
http://ckeditor.ivan-web-blog.ru/
Из того, что не совсем понял - это как настраивать правильно imagemagick и графику на сайте в новом localconfiguration - на сайте во FE-получаются какие-то мутные картинки.
А также так понял для FAL-есть таблица файлов - sys_file - и почему-то туда пишутся ни только картинки которые загружаются через модуль список файлов. У меня туда почему-то записалась иконка расширения adminer. к примеру - можно ли это считать мусором - пока не знаю.
А самое главное TYPO3 6.1 - у меня ставиться без ошибок!
6.2. - не смотрел - посмотрю - если наверное там что-то существенно новое есть.)
Интересно, а чем вызвано - что временные картинки перемещены из папки typo3temp/ - в папку fileadmin/_prosessing_/
?
Раньше так было удобно, удалил папку typo3temp - и сделал рез.копию проекта (или без этой папки)...:rolleyes:
Интересно, а чем вызвано - что временные картинки перемещены из папки typo3temp/ - в папку fileadmin/_prosessing_/
?
Пока не уверен, но по моему и это настраивается...
Через TCA... Или еще как-то глобально.:D
Изучая TYPO3 6.x с ее "переписанным кодом с нуля" - понимаешь - реально круто...
Эта новая система хуков...
Эти репозитории и доменные модели...
Эти расположения и струтура папок...
Не скажу , что это все очень конечно удобно в плане быстрой разработки расширений под FE, но если что-то надо поменять в ядре... Что-то добавить... Это офигенно!
А вот стандартная форма авторизации ни в какую работать не хоучет...
Ошибка при входе в систему
Произошла ошибка при входе в систему. Вероятно имя пользователя или пароль не верные. Проверьте, правильно ли введены данные, был ли использован правильный язык, заглавные или прописные буквы. Убедитесь также, допускает ли Ваш обозреватель Cookies.
В чем может быть причина?
Судя по всему это правда - по поводу того, что TYPO3 - 6 ветки не уступает в производительности в сравнении с предыдущими ветками.
Работает на vBulletin® версия 3.8.1. Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot