Александр Мельник

Александр Мельник

С нами с 02 сентября 2016; Место в рейтинге пользователей: #64
Александр Мельник
24 июня 2020, 21:26
0
Вопрос от старого человека — что такое тик ток?
я открыл ссылку и там какие-то очень низкокачественные фото какой-то девочки)
Александр Мельник
24 июня 2020, 19:47
0
сталкивался с тем, что некоторые хостинги блокируют отправку почты, если в качестве отправителя указан не существующий адрес почты, например ваш admin@domain.ru
Александр Мельник
23 июня 2020, 15:53
0
не знаю прав я или нет, но скажу сугубо свое мнение.
Если данные сайт собираются продвигать, та такой способ отдачи страниц через редирект сведет все будущее сео на нет.
В целом Максим написал вам правильный ответ на ваш вопрос, далее уже вы сами должны понимать ответственность за его использование.
Александр Мельник
10 июня 2020, 07:44
0
Круто, я не знал что даже события самого modx можно удалить.
Александр Мельник
09 июня 2020, 10:49
0
точно точно, Дмитрий. Забыл что они так называются.
Крайне редко ими пользуюсь и всегда в двух случаях
— устанавливаю на сайт компонент quick start button чтобы разместить виждет с произвольными конпками
— пишу чистый html в поле виджета, чтобы вывести на главной странице админки что-то свое.
Александр Мельник
07 июня 2020, 19:08
0
событие на которое подписан плагин не получится «отключить».
Но почему мы бы по крону не запускать скрипт, который будет деактивировать плагин?
Александр Мельник
07 июня 2020, 19:00
0
что вообще такое widget в терминологии modx?
я только на фреймворке yii2 с таким сталкивался.
Александр Мельник
07 июня 2020, 18:27
+4
последний глупый совет и ухожу. Если вы все-таки намерены делать магазин на CMS или каком-то движке, просто ради интереса взгляните в сторону Open Cart.
Не смотря на мою любовь к modx, я бы в качестве именно магазина рекомендовал его. В 400 раз больше дополнительных модулей, по ценам ниже чем в modstore. Уж простите меня авторы компонентов в modstore, но в разы более адекватная поддержка по компонентам (у меня при покупке компонентов в modstore были случае когда авторы просто не отвечали, были случаи когда говорили что на сайте установлен не minishop поэтому ничем помочь не могут (хотя именно он и был установлен), а при покупке модулей в магазине опенкарт, вас «зацелуют», вам будут звонить по вечерам и спрашивать, все ли хорошо, все ли корректно работает, довольны ли вы...) Плюс потому что это не CMS а именно скрипт магазина — как магазин он работает адекватенее. Плюс — он работает я бы сказал по классической и канонической парадигме MVC. Все до безумия прозрачно, есть модели, есть контролеры есть вьюшки. Никаких процессоров, хуков, коннекторов, тоесть всего того что не входит в паттерн MVC.Никогда не будет проблемой найти разработчика, чтобы тот например доработал админку, потому что там никаких extJS, там просто html. Скорость работы выше чем у minishop, (да без всяких тестов только на взгляд, поэтому это субъективно). Ну и самый последний… спорный момент но не упомянуть не могу. Был у нас сайт на опенкарте, вернее и есть. выдавал 25 попугаев в гугл пейдж спид. Как вы думаете, сколько бы пришлось заплатить разработчикам js, верстальщикам, бекенд разработчикам, чтобы привести его к 99 попугаям? Это мистика и она мне не нравится, поскольку я ее не контролирую, НО — мы покупаем модуль для open cart за 400 рублей, устанавливаем и… больше ничего. проверяем в гугл пейдж спид и результат — 99 попугаев.
забыл сказать — а наши сеошники без ума от множества сео фильтров для магазинов, которые стоят 200 рублей и работают шикарно.
Александр Мельник
07 июня 2020, 17:49
0
И уж совсем ни к селу ни к городу, но поделюсь впечатлением.
В прошлую пятницу одни ребята показали мне сайт, которые работает на nodejs и react.
и я до сих пор немного в шоке, я никогда не видел такой скорости ранее — страницы открываются за… милисекунду наверное.
Александр Мельник
07 июня 2020, 17:16
+1
Не буду делать выводов или куда-то склонять. Расскажу опыт одного нашего магазина.
В нем около 30000 товаров сейчас, около 500 стандартных опций товаров.
Работает на выделенном сервере с 16 гигами оперативной памяти, процессоре coreI7 последнего поколения. И разрабатывал его не я, а умные ребята…
Компонент для импорта экспорта товаров задыхается настолько, что менеджерам приходится готовить excel файлы с 5 товарами. То есть если товаров 1000 то они делают 200 файлов, иначе сайт падает при импорте. Компонент seoFilter сразу после установки «убил» сайт наповал, потому что он как-то генерирует сразу очень очень много своих страниц, компонент mFilter2 справляется со своими задачами, однако количество товаров растет, количество опций растет и он уже тоже задыхается — страницы открываются по 4-7 секунд.
Мой вам совет, выбирайте правильные инструменты для решения задач. MODX прекрасен, но я лично не видел ни одного реально большого магазина на нем. Все только бьют себя в грудь, но по факту, пока не видел.
Александр Мельник
04 июня 2020, 15:11
0
Еще глупый вопрос задам. У в modx есть возможность работы с удаленными базами данных?
Какое наиболее грамотное решение, если сайт продолжает работать со своей базой, но часть информации должен отправлять в базу данных на другом сервере?
Александр Мельник
31 мая 2020, 13:24
0
В целом я с вами согласен. То что я пишу сейчас — это не кому-то на заказ, а просто для саморазвития, поэтому творю что хочу)
Я когда начинаю что то разрабатывать совсем с нуля, иду от простого к сложного, сначала делаю наброски, пишу так как легче мне и проверяю саму идею. Если уже заработало и идея жизнеспособна, начинаю как-то код улучшать. Поэтому наброски как правило (если код использует js ) делаю на jquery.
А на днях посмотрел, ну реально же всего 4 места где используется jquery (а тут еще месяцок назад на этом сайте под одним постом была долгая дискуссия, мол что js сейчас сам по себе идеален для работы c DOM) и стало интересно смогу или нет избавиться от него, просто для прокачки навыков скорее всего.
Александр Мельник
31 мая 2020, 13:00
0
Артем, а подскажите, откуда вы брали информацию о методах у target? Да и на сколько я понимаю, это применимо к любому dom-элементу.
matches
classList
closest
Просто это очень похоже на методы jquery а вот у ванильного js я нигде не находил их описания.
максимум
learn.javascript.ru/dom-navigation
но там эти методы не перечислены.
Александр Мельник
31 мая 2020, 10:14
0
ну а по поводу того, чтобы делать все что вы описали на modx, все же подумайте еще раз и взвесьте. Тут либо вы гений, либо сильно обожжетесь и все равно будете кого-то нанимать, на тот же laravel.
На мой взгляд, такого масштаба проекты не делаются на cms.
Александр Мельник
31 мая 2020, 10:08
0
я к тому, что очень давно не видел сайтов, которые представляют из себя ленту приколов, утыканную рекламой. Прямо аж глаз резануло. Вспомнилось как в 98 году, купив в ларьке карточку для подключения к интернету на 1 час, ночью через телефонную линию подключался и смотрел нечто подобное)
а на данный момент я посещаю максимум 10-15 сайтов, поэтому и не знал, что подобные «явления» все еще живы.
Александр Мельник
31 мая 2020, 09:13
+2
решил посмотреть что это вообще такое за fishki.net.
Как будто назад в 1998 попал, думал такого уже и нет в современном интернете)
Александр Мельник
31 мая 2020, 08:53
0
Хорошая практика — вешать обработчик на document, а затем разруливать его таргет через обычный if.
ну да, я вначале так и пробовал,
Приходит в голову мысль, что раз у нас есть объект event то через него можно проверять кто инициатор, кто target и уже по условию проверять наш ли это пациент.
но для меня проблемой стало то, что таргет как ему и положено всегда указывает на инициатора события, тоесть на input например, если мы изменили текст в нем. Но как определить, что этот инпут именно из той формы, за которой мы хотим следить?
К примеру форма имеет атрибут id = «filter», но на странице есть еще 20 форм, формы заказа обратного звонка, калькулятора какого-то, еще что то.
если наш листенер повешен на весь объект документ, то он будет следить за всеми элементами всех форм и единственный способ решить задачу, который я вижу, это всем input задавать определенный класс и проверять на его наличие.
Пока сделал так
let form = document.getElementById('formtest');
        form.addEventListener('change', function (event) {}
по крайней мере под мою задачу так оказалось удобнее. теперь событие возникает только если изменена конкретная форма и что важно для меня — target тоже всегда сама форма, а нее ее отдельный инпут.
Насчет FormData нужно будет присмотреться. Я использовал ее несколько раз, но когда нужно было подготовить данные для отправки ajax-ом (хотя это можно сделать и вручную если заранее знаешь какие в форме input и их названия), я чаще пользовался formData чтобы передать через ajax файл. Но наверное вы и Сергей правы — собирать данные из формы эта штука должна уметь.
Александр Мельник
31 мая 2020, 08:07
+3
ну а я пессимист по натуре, поэтому отвечу — нет, мне кажется не справится.
Это конечно субъективный опыт, но при подходе — просто накупить компонентов и думать что все они друг с другом будут работать хорошо и быстро — дает ужасный результат. Даже если вы и заставите все эти компоненты работать совместно, то уже при 500 посетителей в сутки все будет тормозить.
На modx можно сделать все что вы описали, если взять чистой modx, pdoTools а все остальное продумать и разработать самому, аккуратно оптимизируя все запросы, кеширование и так далее.
Александр Мельник
30 мая 2020, 21:45
0
надо же, это примерно то, что придумал и я в своем методе.
спасибо за подсказки.
Александр Мельник
30 мая 2020, 21:35
0
а насчет fetch, да штука классная. Но это уже обработка запросов.
А у меня другое. Я наверное запутал всех, акцентируя внимание на слове — форма.
Это некий фильтр и в момент изменения любого его поля нужно собрать все текущие данные в виде массива объектов. Теоретически это может быть и вовсе не форма, а какие-то дивы. Ведь форма никогда и не отправляется по сути. Отслеживается событие change, все данные (выбранные чекбоксы например) собираются и далее уже пошла логика работы с этими данными. Форма здесь скорее дань традициям.