Fi1osof
С нами с 05 мая 2014; Место в рейтинге пользователей: #106 часов назад
Ух, класс! Вот так работает:
$array = array(111, 112);
if(in_array($modx->controller->resource->get('id'), $array)) {
$modx->regC...
RTE для introtext: помогите пожалуйста с подсказкой 7
Вчера в 12:43
А как вы в шаблоне письма вывели имя пользователя? У меня просто в шаблоне отрабатывает. А в письме нет.
[[$user.name]]
[[$us...
Sendex - как добавить поле "Имя"? 2
Вчера в 11:10
Слышу эту песню про программирование — уже с лет 20 точно.
Но пока «мы» даже сверстать макет не можем автоматически, чтобы можно было в продакшен о...
Испытание ИИ Cursor 9
25 декабря 2024, 14:13
В итоге переписала сама. Не знаю можно ли вставлять сюда столько текста, так что чистый JS код, если кому надо, можно найти по ссылке
[xLike] Идеальная система лайков с оптимистичным интерфейсом и правильной формулой 113
24 декабря 2024, 21:46
Это не косяк, это осознанное изменение. Я считаю, что нет смысла показывать «Форма содержит ошибки» и ещё сами ошибки. Однако само сообщение в ответе ...
[SendIt 2.0.0] Пагинация и обновлённая загрузка файлов 28
23 декабря 2024, 18:04
Для версии 3 лучше конечно иметь типа minishop3.
Да для всего этого нужно свободное время конечно же.
minishop2.com. Почему то не хочет в админку сайта заходить 3
23 декабря 2024, 16:08
Добрый день, спасибо за помощь, разобрались на сайте поддержки продукта, сразу просто не увидели там продление поддержки, с Уважением.
Подключение msOptionsColor 2
23 декабря 2024, 03:39
polylang-1.3.16-pl
появились проблемы с кешированием, рандомно не меняется culturekey, после очистки кеша — всё ок
Polylang 142
21 декабря 2024, 12:41
Подскажите как работает счетчик загрузок (я так понимаю поле 'download') но оно по у меня не обновляется, всегда показывает 0. И как получить поле раз...
FileMan - прикрепление файлов к ресурсам для MODX 3 53
П.С. я не отношусь критически. Я просто объясняю.
К слову, у меня пока больше ничего не сломалось. Надеюсь это была последняя бага для меня в этом релизе.
Нет, не против.
Еще немного рассуждений. На самом деле не понятна такая холодная реакция западных разрабов. Активно разрабатывал и двигал тему я еще почти 3 года назад community.modx-cms.ru/search/topics/?q=modxSmarty (на самом деле в проектах Смарти крутить начал еще в 2011-ом). Так вот, на ранних стадиях эта тема была интересна западу. В частности очень сильно заинтересован был Andrew Smith aka silentworks. Он как раз экспериментировал с твигом. Мы с ним в скайпе не раз общались, ему все очень нравилось, он был в восторге (именно от связки phpTemplates+modxSmarty). Уточню: его именно сама основа радовала, но Смарти его не интересовал, он твиг хотел использовать. Так же я не раз общался с Марком Хамстра, он тоже в деталях знает что и как у меня работает. То есть аргумент «они не разобрались еще что и как работает» — он здесь маловероятен ИМХО. Скорее всего здесь есть какая-то другая причина. Джейсон Ковард радеет в первую очередь за совместимость. Это и понятно. Отдав предпочтение одному шаблонизатору, можно потерять рынок альтернативного шаблонизатора. И затачивая модуль под определенный шаблонизатор, так же есть потери по совместимости. Так что с большой долей вероятности вот эти шаблонизаторы так и останутся 3rd-party, и в ядро никогда не попадут. Но это Джейсон. А вот почему тема затихла на уровне Andrew и прочих? Мне не понятно. В голову лезет только одна мысль — они осваивают другие платформы и технологии.
А я пишу в первую очередь для себя. И документацию как таковую не пишу.
Тут же даже далеко ходить никуда не надо. Взять modx.pro и modxlub.ru — у вас одни технологии, у нас другие. Это мы подходы сейчас обсуждаем примерно одни, а технологии разные. Хоть и нет у нас трудностей перевода (на одном языке говорим) и на рынке одном сидим. Но все же сильно отличаемся. Про modxSmarty я уже больше двух лет рассказываю, но аналог вы только сейчас запускаете. Хотя и подключается у нас тоже не на много сложнее.
В общем, я давно уже никому ничего не навязываю. Кто что хочет — тот пусть и юзает. Иногда вот только мнением поделюсь своим, да на вопросы отвечу, но навязывать не буду — пусть каждый сам себе решает что юзать. Вот и ты нервы побереги, не обращай внимания на них. Ведь в первую очередь ты это для себя делаешь. Я вот тоже для себя в первую очередь делаю, и не особо важно будет кто юзать или нет. Для меня главное — что я с этим инструментарием могу разрабатывать проекты для своих клиентов, которые их устраивают.
P.S. уточню, что на указанном проекте пришлось еще использовать cacheOptimizer для решения проблем с генерацией кеша контекста с большим количеством ресурсов, а так же вот эту свежую технологию. Тем не менее, заслуга системы шаблонизации здесь имела самое главное место.
Так же я обещал написать подробную статью про разработку крупных проектов на MODX, но обрушился большой объем срочной работы, из-за чего я так этого и не сделал (да и вообще по-моему ни одной статьи с того момента нигде не опубликовал). Но вот уже доразгребаюсь и скоро все-таки напишу ее и маякну. Там как раз так же отдельное внимание будет уделено системе шаблонизации и ее роли в вопросе снижения нагрузки на сайт.
Но я не думаю, что следует требовать от них этого. К примеру, вряд ли я был бы рад, если бы они феном в ядро пульнули, а ты вряд ли, если бы смарти. Так что лично меня вполне устраивает, что MODX позволяет прикрутить ту систему шаблонизации, которая больше нравится. Это и демонстрирует его силу. Но вот общие навыки и технологии у сообщества развивать следует. Ведь и в феноме, и в смарти, и в твиге и остальных — принципы примерно одинаковые. Синтаксис только отличается. Но эти принципы сильно отличаются от принципов MODX-а. К примеру, я до сих пор некешируемые части шаблона вызываю через некешируемый [[!smarty?tpl=`path...`¶ms...]] (или {snippet name=smarty params=$params as_tag=1}). Иначе просто никак. И вот все эти тонкости требуют довольно тщательного изучение (то есть порог вхождения все-таки више, чем на чистом MODX-парсере). Но если освоить принципы на одном шаблонизаторе, то тогда уже свободно можно будет разобраться и с другим шаблонизатором. И может даже какие-то стандарты выработать. К примеру, в том же компоненте EdinayaKassa у меня идет папка с шаблонами (хотя в ней всего один шаблон). В конечном шаблоне я подключаю папку шаблонов модуля, а в сниппете идет вызов шаблона модуля без указания папки. Smarty перебирает все папки шаблонов в поисках указанного файла и какой первый найдет — такой и заюзает. То есть можно или другую папку указать, или просто в своей основной папке создать такой шаблон и переопределить базовый. Все это дает огромные возможности для модульности и шблонизации. В общем, забегая далеко вперед (скорее всего в невозможное будущее), можно было бы заложить стандарты, чтобы в компонентах создавались для совместимости и феном, и смарти шаблоны компонентов. А вызов сниппета шаблонизатора (типа [[!smarty?]]) заменить на какой-то универсальный, который будет юзать текущую систему шаблонизации. У меня давно были на это мысли, и даже в ранних версиях phpTemplates сразу было прописано переопределяемое подключение системы шаблонизации (были такие эксперименты, от которых потом отказался).