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

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

С нами с 02 сентября 2016; Место в рейтинге пользователей: #52
07 июня 2019, 21:46
-1
Есть 2 варианта реализации подобного функционала — создать 2 разных страницы. Или принимать способ отображения через GET параметр.

Ну почему же только две, это вы придумали две.
Обычно это делает через куки и не нужно никаких get параметров
06 июня 2019, 13:01
0
Странная эта история…
Сегодня я обнаружил что еще на одном проекте внедрен вредоносный код, в файл /assets/components/formit/connector.php

Но что самое интересное и непонятное, просматриваю журнал действий в админке и вижу, что тут снова как и на прошлых проектах кто то делал file_update assets/components/ace/completions.php
Хотя визуально в файл не было ничего добавлено и побайтовое сравнение не показывает никаких результатов.
Однако через 10 минут как кто-то «правил» файл компонента ace возник вредоносный код в файле компонента formit
25 мая 2019, 12:17
0
docs.modx.org/current/ru/getting-started/installation/standard
На этой странице в самом низу есть блок ссылок. Называется Смотрите также.
Последняя ссылка в нем — ссылка на youtube
При переходе по ней — youtube сообщает, что видео не доступно
25 мая 2019, 08:32
0
Обнаружил, что все изображения, которые включены в документацию, битые, на всех страницах.
К примеру
docs.modx.org/current/ru/extending-modx/custom-resources
Наверное вы в курсе, но решил акцентировать внимание.
А на этой странице в блоке Смотрите так же ссылка на видео которое уже удалено.
docs.modx.org/current/ru/getting-started/installation/standard
24 мая 2019, 12:38
0
Я вас понял. Да это существенное замечание, спасибо.
24 мая 2019, 12:12
0
Я не совсем понимаю словосочетание — существование ресурса по ссылке? Это как?
Речь ведь как раз о том, что ресурс открывается как при нижнем регистре букв в url так и при верхнем, так и при комбинации
modx.pro/BLOGS
modx.pro/bLOGS
modx.pro/blogs
Я не большой специалист в СЕО, даже меньший чем в программировании. Да и поисковые системы никогда не выдавали нам ошибку о таких вот дублях страниц. Но СЕО это такая штука, что остается им только посочувствовать, мне лично их работа напоминает шаманские танцы с бубном над костром в ожидании того, что это поможет и пойдет дождь. Так и СЕОшники… Каждый раз когда уходит один спец и приходит другой — начинаются новые танцы. То мы переделывали все проекты, чтобы уровень вложенности страниц был не более 3 (представляете себе масштаб работы программной? Около 30 проектов, на 7 разных движках и все переделать так, чтобы нигде страницы не были дальше третьего уровня не сломав сайт.) То приходит другой и говорит, что уровнеь вложенности фигня и нужно вернуть все назад)
24 мая 2019, 09:08
0
Да, спасибо Сергей. примерно так я и начал организовывать, правда ваш код на две строки короче и изящнее.
Насчет первого комментария, почти соглашусь с вами и Лавровым.
23 мая 2019, 21:01
0
Да ладно, можно было просто использовать другой идентификатор обертки??
Я года три назад тому задавал подобный вопрос и мне все написали, что это невозможно, нужно только писать плагин, который будет сбрасывать хеш и так далее…
Прямо спасибо.
23 мая 2019, 20:57
+5
Зачем минусовать… Человек провел работу и делится ей. Не знаю что такое xPoller2, но уже хорошо, что кто-то находит в себе силы улучшать и дорабатывать чужие компоненты.
17 мая 2019, 10:06
+1
спасибо за ваши труды
17 мая 2019, 09:18
0
Спасибо. Удобно, работает.
17 мая 2019, 08:21
0
Хотел почитать документацию и посмотреть демо, но googlesheets.boshnik.ru не отвечает.
15 мая 2019, 20:50
0
file_update я неверно написал по памяти.
15 мая 2019, 17:00
0
сравнил файл с зараженного сайта и нет — они идентичны даже побайтово.
Очень странно. Даже если предположить, что кто-то внес изменения, воспользовался ими, а потом удалил, то в журнале modx должно быть две записи -resource_update для этого файла.
15 мая 2019, 15:31
0
сравнил лишь визуально, спасибо за совет
03 мая 2019, 20:09
0
спасибо, информация о которой стоит подумать… Вы правы, я пока что не вижу разницы между компонентом и пакетом и считал, что это одно и тоже)
03 мая 2019, 17:59
0
Вы очень хорошо постарались. Прямо нет слов.
Но вопросов становится все больше и даже как-то совестно вас ими засыпать. Постараюсь кратко.
— у меня нет задачи как у автора этого вопроса вести разработку на двоих, но если бы была, я бы наверное использовал статичные файлы или возможности парсера pdoTools для работы с файлами и плюс дамп базы данных. Мне кажется это намного проще держать в системе контроля версий еще и sql файл, чем городить огород с modExtra. Но скорее всего это изза неумения с ним работать.
— Откуда вы берете информацию о том как работать с modExtra? На гитхабе лежит два варианта этого компонента. В ветке версия 1 более старый и в ветке мастер более новый. По версии один еще можно найти на сайте Василия Наумкина пример разработки. Но по новой версии ничего кроме 10 строчек в файле описании на гитхабе и нет. И ставить это в вину Василию нельзя, он писал его для себя и ему и так все понятно.
— как по мне, компонент созданный при помощи modExtra представляет собой прежде всего некий класс, объект которого мы можем получить и достучаться до его методов. Не могу понять как это можно использовать для разработки всего сайта, а не отдельного функционала. Вы не создаете класс, вернее не пользуетесь им (мне кажется нельзя собрать пакет не имея основного класса компонента), а только создаете чанки, сниппеты и так далее и пользуетесь тем, что в момент установки компонента все это автоматически регистрируется в базе?
— но тогда получается, что вам после каждого внесения изменения, после каждой новой строчки или созданного чанка нужно пересобирать компонент? Да я видел в учебнике Василия информацию о том, что систему можно «обмануть» и настроить системные настройки так, чтобы modx смотрел не в core/components а в директорию с разрабатываемым компонентом, но… это справедливо только для первой версии компонента. Я сегодня потратил время на первичное ознакомление с версией которая сейчас лежит в master и у меня возникла такая же проблема как и многих пользователей. После сборки компонента удаляется содержимое директории в которой велась разработка, а сам компонент раскладывается по core и assets.
— максимальное место на котором я туплю – вновь создаваемый компонент ведь никак не пересобирает уже имеющиеся. Он пересобирает только себя. А значит нет никакой возможности повлиять на стандартный чанк или сниппет того или иного компонента. Нужно будет переписывать отдельными файлами все чанки всех используемых на сайте компонентов, если мне нужно внести в них одно слово?
— К примеру мы создали файлик шаблона. Как modExtra позволит прикрепить к нему TV поля? Или придется писать отдельный плагин, чтобы он срабатывал в mgr и прикреплял TV?
— к примеру я создал некую конфигурацию MIGX, привязал ее к TV, TV к шаблону и заполнил данными. Как modExtra сможет передать эту информацию другому разработчику? Ведь и сама конфиграция migx и записанный там json лежит в отдельных таблицах базы данных, а компонент созданный на основе modExtra знает только об одной таблице (ну может и не об одной, но только о тех таблицах, чьи схемы в нем созданы)?
— Ну и в заключение, хочу заметить, что уделил сегодня немного времени modExtra и вот с чем столкнулся. Установил modx 2.7.1 склонировал modExtra, переименовал, запустил сборку и сразу получил установленный компонент. Скачал пакет и установил его на другой сайт, тоже 2,7,1, на том же сервере и… ничего. Файлы не создались, в логе установки куча ошибок. Насколько я понял, все ошибки связаны с тем, что сервер на windows. Поскольку даже путь к установке компонента был сгенерирован с прямым слешами для Linux, а не с обратным как для windows. Ну и плюс странная ошибка xPDOVehicle does not support resolvers of type. Скорее всего эта точка тоже означает linux указатель на текущую директорию.
Загрузка рабочего пространства пакета...
Рабочее пространство загружено, сейчас устанавливаем пакет...
modAction support is deprecated since version 2.3.0. Support for modAction has been replaced with routing based on a namespace and action name. Please update the extra with the namespace collections to the routing based system.
Skipping vehicle object of class modChunk (data object exists and cannot be upgraded); criteria: Array ( [name] => tpl.sayhello.item )
Skipping vehicle object of class modChunk (data object exists and cannot be upgraded); criteria: Array ( [name] => tpl.sayhello.office )
xPDOVehicle does not support resolvers of type .
xPDOVehicle does not support resolvers of type .
Path specified for package sayhello is not a valid or accessible directory: C:/OSPanel/domains/garant/core/components/sayhello/model/
Успешно установлен пакет sayhello-2.0.0-pl
И получается, что созданный на основании modExtra компонент и собранный в пакет, никто не сможет установить на openServer. А кто бы что не говорил, я лично видел что многие из уважаемых посетителей этого сайта им пользуются. Хотя все снова может поясняться исключительно моей криворукостью, ведь собирают же люди пакеты и устанавливаются они у меня.
Но в любом случае, спасибо за желание помочь.
03 мая 2019, 11:29
0
Не совсем это ожидал я услышать, но спасибо за ответ.
03 мая 2019, 10:37
0
Я так и подумал.
Раз уж зашла речь об modExtra и если у вас есть время — расскажите поподробнее, как используя компонент для создания компонентов разрабатывать сайт. А тем более не одному. Вот правда, у меня в голове не укладывается. Я воспринимаю компонент, как некий отдельный самостоятельный кусок кода, который решает конкретную задачу.
Как например modExtra поможет работать над функционалом того же минишопа? Вот правда, расскажите подробное, реально интересно. Как вести разработку вдвоем? Сайт должен где быть расположен? на удаленном сервере у которого доступ к файлам есть у обоих разработчиков и они оба через свои IDE скачивают файлы сайта и работают с ними? Как modExtra может помочь к примеру с редактированием шаблона почтового сообщения, который отправляется покупателю при оформлении заказа в магазине? Ведь этот шаблон устанавливается вместе с компонентом minishop и представляет из себя только запись в базе? Я задаю вопрос не чтобы показать, что вы не правы, не воспринимайте это в таком ключе — я просто не понимаю как это работает. Я еще понимаю когда Зернов в своем gitmodx написал скрипты, которые при запуске шерстят базу данных, вытаскивают оттуда сниппеты, чанки и так далее и создают из них файлы — это хотя бы мне понятно, а вот как moExtra может помочь разрабатывать новый сайт причем одновременно двумя тремя разработчиками — я не понимаю. Спасибо.