Fi1osof
С нами с 05 мая 2014; Место в рейтинге пользователей: #105 часов назад
Отличное дополнение, спасибо!
Подскажите, как организовать файл если стоит msOptionsPrice2 привязан к опции size там может быть много позиций с разн...
[YandexMarket2] интеграция с msOptionsPrice2 1
Сегодня в 00:42
Еще снова вернулась проблемка, после выбора способа доставки почтой РФ — появляется стоимость доставки, но она «прилипает» и не исчезает после переклю...
Расчет стоимости доставки msRussianPost 11
Вчера в 21:57
Лучше деинсталировать и установить новую версию. Там полностью переписан JS.
ms_CDEK2 пропал? 5
Вчера в 20:33
Фильтрация как правило предполагает точное совпадения значений, а тебе нужен поиск.
mFilter2 фильтрация tv 1
Вчера в 19:55
Все исправилось, после замены на 'parents' => $_modx->resource.id
Помогите найти ошибку в шаблоне, теги 13
Вчера в 09:31
А кто подскажет, как в форму Создания/Редактирования ресурса, через ms2Form, добавить возможность выбирать несоклько параметров в одном TV?
Ну то-ест...
Создание ресурсов из фронтенда сайта, зарегистрированными пользователями. 4
Вчера в 08:53
если правильно понял то так
{set $rows = json_decode($_modx->resource.constructor_block, true)}
{foreach $r...
getImageList. Вывести вложенный migx на fenom 1
Вчера в 08:43
Подскажите, если на странице будет две формы, они будут работать? К примеру reCaptchaV3 этого сделать не может, нужно через костыль в виде скрипта, ко...
YaSmartCaptcha - защитите ваши формы от спама умной капчей от Яндекс 5
20 ноября 2024, 16:25
В сниппете rcv3_html достаточно отложить загрузку через setTimeout (хотя кто-то делает через onClick). Не думаю что мой вариант самый правильный и что...
reCaptcha v3 - отложенная загрузка 1
19 ноября 2024, 10:51
Решил свою проблему через имя пользователя, но хотелось бы через права пользователя «Неограниченные права»
<?php
/**
* Системное событие OnMan...
Редактирование контекста в мультидоменном сайте 1
П.С. я не отношусь критически. Я просто объясняю.
К слову, у меня пока больше ничего не сломалось. Надеюсь это была последняя бага для меня в этом релизе.
Нет, не против.
Еще немного рассуждений. На самом деле не понятна такая холодная реакция западных разрабов. Активно разрабатывал и двигал тему я еще почти 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 сразу было прописано переопределяемое подключение системы шаблонизации (были такие эксперименты, от которых потом отказался).