Кто готов написать заметку?
Приветствую, вышел Modx 3 и обратной совместимости со второй версией у него нет. Постепенно популярные компоненты адаптируют для новой версии, но остаются ещё непопулярные и новые. Так вот, есть как минимум 2 человека готовых оплатить написание заметки с разбором нюансов создания и адаптации компонентов под Modx 3. Задача непростая, но и не срочная. Как только найдется желающий откроем сбор средств на это, без сомнения, благое дело.
P.S. Сам не могу, опыт не позволяет.
P.S. Сам не могу, опыт не позволяет.
Поблагодарить автора
Отправить деньги
Комментарии: 19
Я писал про свой опыт…
modx.pro/components/20322
и несколько ссылок давал на то, чем пользовался сам. Скоро 2 года уже будет этой заметке, актуальность под вопросом)
modx.pro/components/20322
и несколько ссылок давал на то, чем пользовался сам. Скоро 2 года уже будет этой заметке, актуальность под вопросом)
А я ХЗ изменилось ли там, что-то за два года или нет)))
Я сейчас готовлюсь к адаптации минишопа под MODX3. Предварительно будет большой сбор материала и подготовка более простых компонентов. Я в любом случае напишу заметку на эту тему.
На данный момент насколько я знаю очень приличной экспертизой в MODX3 обладает @Aleksandr Huz
Саш — может ты возьмешься?
На данный момент насколько я знаю очень приличной экспертизой в MODX3 обладает @Aleksandr Huz
Саш — может ты возьмешься?
Хочу лично у тебя спросить, что там с AjaxForm без jQuery Смотрел? Думал? Решил что-то? А то может отдельный пакет собрать?
Мы с @Павел Гвоздь Обсуждали. Главный затык — это проблемы обратной совместимости. Если сделать по твоему, то сломаем старые сайты обновлением. Самое простое решение это пока использовать в комплекте два набора старый и новый без jQuery. По умолчанию старый. Изменяется тип скрипта системной настройкой. Ее кстати нужно будет добавить.
Я тебе пока по этому поводу не писал, потому что хочу еще код-ревью сделать. Сам код никак не посмотрю. Не хватает сил.
Я тебе пока по этому поводу не писал, потому что хочу еще код-ревью сделать. Сам код никак не посмотрю. Не хватает сил.
Хотел спросить в ближайшем будущем minishop2, msearch2 без jQuery будут? Bootstrap 5 без jQuery и на сайтах он нужен будет только для msearch2 и остальных дополнений для minishop2.
msearch2 скорее всего нет, не будет. По нему производятся только мелкие фиксы. А вот чтобы взять, переписать полностью всю JS логику — это много сил нужно. Здесь вам лучше ответит автор @Илья Уткин
По минишопу я могу ответить уже более точно — да план такой есть. Причем на этот год. Насколько план получится осуществить пока не понятно. Тоже много времени требуется, потому что если ломать, то ломать уже основательно.
Мы хотим сделать новый JS максимально современным. С событиями, с разбивкой по модулям, с нормальным API в конце концов. Это дофига делов.
По минишопу я могу ответить уже более точно — да план такой есть. Причем на этот год. Насколько план получится осуществить пока не понятно. Тоже много времени требуется, потому что если ломать, то ломать уже основательно.
Мы хотим сделать новый JS максимально современным. С событиями, с разбивкой по модулям, с нормальным API в конце концов. Это дофига делов.
Я не ахти какой спец в JS, но если надо могу помочь.
Ну не знаю насчёт системной настройки, там же изменены и класс, и JS и сниппет и лексиконы, может быть действительно собрать просто отдельный пакет, кто хочет пусть его использует?
Я думал там только JS переписан. Решает в любом случае Павел как владелец компонента. С моей стороны обещаю код-ревью, как только доберусь.
А если я своими силами соберу новый пакет, Павел сильно расстроится?
В таком случае он не попадет в репозиторий (думаю, не пропустят аналог). Да и популярности от него ждать не стоит. Люди больше скачивают знакомое.
Популярность его меня мало интересует, это личное дело каждого, что использовать.
Зачем собирать отдельный пакет? Чтобы плодить кучу одинакового и создавать проблему выбора?
Твой PR скоро просмотрю, обязательно. Время только найду.
Твой PR скоро просмотрю, обязательно. Время только найду.
Всё, я вас понял.
Честно говоря, тут описывать особо нечего
1. Создаем файл composer.json
2. Создаем файл bootstrap.php
3. Класс в папке model оставляем в таком виде
И соответсвенно создаем класс в папке src
Везде где нужно подключить наш сервис, пишем так:
И рекомендовано использовать название класса вот так ExtraFields::class вместо 'ExtraFields'
Например:
Вот и все, теперь наш компонент совместим с modx2 и 3.
И пока не вышла версия 3.3, то можно использовать старые название классов благодаря алиасам
1. Создаем файл composer.json
2. Создаем файл bootstrap.php
3. Класс в папке model оставляем в таком виде
И соответсвенно создаем класс в папке src
Везде где нужно подключить наш сервис, пишем так:
/** @var ExtraFields $extrafields */
if ($modx->services instanceof Psr\Http\Client\ClientInterface) {
$extrafields = $modx->services->get('extrafields');
} else {
$extrafields = $modx->getService('extrafields', 'ExtraFields', MODX_CORE_PATH . 'components/extrafields/model/');
}
И рекомендовано использовать название класса вот так ExtraFields::class вместо 'ExtraFields'
Например:
$_modx->getObject(ExtraFields::class);
Вот и все, теперь наш компонент совместим с modx2 и 3.
И пока не вышла версия 3.3, то можно использовать старые название классов благодаря алиасам
И рекомендовано использовать название класса вот так ExtraFields::class вместо 'ExtraFields'К слову так рекомендовано писать и в MODX2. Я давно так пишу.
Например:
$_modx->getObject(ExtraFields::class);
Артур статья готова, ты там денег обещал )
Начало положено это хорошо. Но хочется немного больше подробностей для нубов, например про composer.json что там должно быть обязательно, а чего может и не быть, про структуру файлов куда можно класть, а куда не стоит. В общем, я подожду твою заметку про minishop.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.