Релиз miniShop2 ver. 2.8.2
Всем привет!
15/03/2021 в репозитории стало доступно обновление miniShop2 до версии 2.8.2.
Что же мы подготовили в данном релизе:
Добавлено:
Обновление доступно в
По просьбам создан сбор на дальнейшее развитие miniShop2
Огромное спасибо, всем кто поддерживает и донатит!
15/03/2021 в репозитории стало доступно обновление miniShop2 до версии 2.8.2.
Что же мы подготовили в данном релизе:
- В сниппет msProducts добавлена поддержка операторов OR, AND в параметре optionFilters [PR #539]
[[!msProducts? &parents=`0` &optionFilters=`{"width":"300", "OR:height:>=":"200"}` ]]
- Концепция рефакторинга подключения скриптов уведомлений [PR #542]
Список изменений
- Из дефолтного JS скрипта убрана вся логика объекта Message. Оставлены лишь вызовы методов. Своеобразный драфт для последующей перезаписи
- Добавлен отдельный файл message_settings. Туда перенесена вся логика объекта Message из файла default. По умолчанию работает с jGrowl но уже не пытается его подключать если библиотека не найдена. В последующем пользователи смогу переписать методы этого файла под собственные библиотеки уведомлений
- Добавлены системные настройки CSS и JS для подключения библиотеки уведомлений. По умолчанию туда зашит jGrowl. Ранее подключение библиотеки было вшито в скрипт и было сложнее разобраться куда и как подключать свое
- Добавлена кнопка «Сохранить и закрыть» в окне ссылок. [PR #533]
- Добавлена поддержка параметра return в msProducts. [PR #553]
Теперь можно использовать:
[[!msProducts? &parents=`0` &return=`ids` ]] [[!msProducts? &parents=`0` &return=`sql` ]] [[!msProducts? &parents=`0` &return=`json` ]] [[!msProducts? &parents=`0` &return=`chunks` ]] [[!msProducts? &parents=`0` ]]
- Добавлена возможность заменить поле Содержимое редактором блоков ContentBlocks. [PR #529]
- Исправлено отображение значения опции товара на странице категории товаров [PR #547]
- Исправлена ошибка Recoverable error: Object of class msProductData_mysql could not be converted to string [PR #555]
- Изменен вызов переменных в дефолтном чанке msProduct.content.fenom [PR #557]
- Перешли на новый формат записи списка изменений keepachangelog.com/en/1.0.0/
- Удален не используемый в HTML 5
type="text/javascript"
- Удалена не используемая библиотека `jquery.form` [PR #544]
- Удален не используемый файл стилей old.css file [PR #552]
- Удален deprecated метод обратной совместимости с ms1 [PR #537]
- Удалено дублирование стилей css [PR #558]
Обновление доступно в
По просьбам создан сбор на дальнейшее развитие miniShop2
Огромное спасибо, всем кто поддерживает и донатит!
Поблагодарить автора
Отправить деньги
Комментарии: 82
Спасибо, @Иван Бочкарев и всем коллегам! Очень важные обновления, флагман как и прежде на плаву и набирает обороты.
Лови донат :)
Лови донат :)
Спасибо огромное! Ребятам закинул сразу!
Большое спасибо! Как обычно, закинул свои пять копеек))
Спасибо за поддержку!
Добавлена поддержка параметра return в msProductsЭх, это бы, да пару лет назад :)
))
Нагоним. Релиз каждый месяц
Нагоним. Релиз каждый месяц
Закинул донат!
Спасибо за поддержку!
Не могу отправить… Error «Списание с иностранных карт запрещено», карта Сбербанк (KZ). Иван как можно еще отправить кроме яндекс денег и тинькоф?
По номеру телефона +79293654868 через Сбербанк онлайн
Не знаю, с обновлением связано или нет. Но вчера обновился и вылезает теперь такая ошибка:
Помогите пожалуйста решить проблему
Parse error: syntax error, unexpected '=' in /core/cache/includes/elements/modsnippet/20.include.cache.php on line 111на 111 строке такая конструкция:
[$operator, $key] = $components;
Меняю на [$operator, $key] == $components;
все работает, но до следующей очистки кеша. Помогите пожалуйста решить проблему
все работает, но до следующей очистки кеша.Потому что вы правите закэшированный сниппет, а вам необходимо поправить исходный.
В админке сайта в разделе сниппеты найдите сниппет с id=20 и проделайте все тоже самое в нем
Это сниппет msProducts.
И вопрос, я так понимаю в том, что после обновления он работать перестал…
И вопрос, я так понимаю в том, что после обновления он работать перестал…
Для начала нужно проверить, так как извещений об ошибках в работе у обновленных сайтов не было.
Если такие имеются — пишите, подробнее, что и как. Разберемся и исправим.
74 — сайта обновлены. Если бы не работало — написали бы уже
Если такие имеются — пишите, подробнее, что и как. Разберемся и исправим.
74 — сайта обновлены. Если бы не работало — написали бы уже
что с версией php у вас на хостинге?
А можно узнать исходя из каких соображений вы меняете код таким образом? При чем тут сравнение?
Проблема скорее всего в вашей версии php.
Это деструктуризация массива — шотркат для конструкции list, который доступен с PHP >= 7.1.
Поэтому, когда ты добавляешь туда еще один знак «равно», то ломаешь код.
Либо повышай версию php до 7.1, либо заменяй на
Поэтому, когда ты добавляешь туда еще один знак «равно», то ломаешь код.
Либо повышай версию php до 7.1, либо заменяй на
list($operator, $key) = $components;
Думаю, это стоит исправить. В описании компонента в магазине мы видим:
Внимание, этот компонент требует версию PHP 5.3 или выше! Если ваш сайт использует PHP ниже требуемого, установка этого дополнения может его сломать.что явно не стыкуется с требованием 7.1
Мы всегда рады PR ?
Тут речь про то, чтоб повысить в системных требованиях минишопа минимальную версию php
Тут речь про то, чтоб повысить в системных требованиях минишопа минимальную версию phpТут речь про то, чтобы исправить шорткат на старый list, потому что никто в здравом уме не будет без мажорного релиза повышать требуемую версию php с 5.3 на 7.1.
P.S. Стрелочки с мобильной версии настолько удобные, что я даже случайно плюсанул тебе, ну да ладно.
Добрый день! Подскажите пожалуйста, оказываете ли помощь по modx на платной основе?
Да, проблема была в версии PHP 5.6
Спасибо большое!
Спасибо большое!
Пожалуйста, обновите описание плагина и его требования тут: modstore.pro/packages/ecommerce/minishop2
Там все устарело: текст, фотки.
Так же было бы не плохо обновить демо версию тут: minishop2.com/
Движок, сам miniShop2, и включить показ админ панели miniShop2 в админке, чтобы было нагляднее как работать с заказами, опциями и т.д.
Это вводит в заблуждение новичков.
Там все устарело: текст, фотки.
Так же было бы не плохо обновить демо версию тут: minishop2.com/
Движок, сам miniShop2, и включить показ админ панели miniShop2 в админке, чтобы было нагляднее как работать с заказами, опциями и т.д.
Это вводит в заблуждение новичков.
Спасибо! До следующих выходных обновим.
Что касается демо сайта — он в работе.
Что касается демо сайта — он в работе.
Эх, так и не обновили. :(
Извините, что не выполнил обещаенное. Но это сейчас горит?
Значит был занят другим. Но я сделаю.
Значит был занят другим. Но я сделаю.
По поводу параметра «return» можно както вернуть масив со значениями, или только return=>json, а потом json_decode?
json это и есть своеобразный массив. Нет прямого возврата массива нет, так как под капотом pdoTools который не умеет возвращать массив. Это возможно только при ручном написании сниппета
pdoTools умеет возвращать массивы. Это сниппеты modx не умеют возвращать массивы. Только строки. Точнее выражайтесь плиз :-)
Ну да согласен — ерунду сказал. Конкретно pdoTools тут не при чем.
Готов загибать пальцы, какие сниппеты из pdoTools умеют возвращать массив? Думаю, пальцев на трехпалой руке хватит и ещё 3 останется.
Класс pdoFetch может вернуть массив, сниппеты из pdoTools нет.
Точнее выражайтесь плиз :-)
Класс pdoFetch может вернуть массив, сниппеты из pdoTools нет.
Точнее выражайтесь плиз :-)
я и сказал что все сниппеты не могут возвращать массив. Хоть из pdoTools хоть из чего. pdoFetch входит в pdoTools.
Друг мой, ты сильно ошибается.
И в чем же дружище? :-)
Вот в этом
я и сказал что все сниппеты не могут возвращать массив.Сниппет без проблем может вернуть массив.
Покажи как
Например так.
Блин некогда разбираться. Позже
После обновление перестал работать сайт выводит ошибку 500, HTTP ERROR 500, добавил всего лишь [[!msProducts?]]
Проект почти готов и после обновление придётся делать заново. Переносить всё на новую CMS,
Проект почти готов и после обновление придётся делать заново. Переносить всё на новую CMS,
Проект почти готов и после обновление придётся делать заново. Переносить всё на новую CMS,Зачем делать заново? Посмотри серверный error.log чтобы выяснить причину ошибки.
p.s. Обновил уже около 20 магазинов, везде всё норм.
[2021-03-31 16:25:26] (ERROR @ /public_html/core/model/modx/modx.class.php: 1031) `[[+id]]` is not a valid integer and may not be passed to makeUrl()
[2021-03-31 16:25:26] (ERROR in resource 3 @/public_html/core/model/modx/modparser.class.php: 1374) Bad link tag `[[~[[+id]]]]` encountered
[2021-03-31 16:25:27] (ERROR @/public_html/core/model/modx/modx.class.php: 1031) `[[+id]]` is not a valid integer and may not be passed to makeUrl()
[2021-03-31 16:25:27] (ERROR in resource 3 @ /public_html/core/model/modx/modparser.class.php: 1374) Bad link tag `[[~[[+id]]]]` encountered
[2021-03-31 16:25:26] (ERROR in resource 3 @/public_html/core/model/modx/modparser.class.php: 1374) Bad link tag `[[~[[+id]]]]` encountered
[2021-03-31 16:25:27] (ERROR @/public_html/core/model/modx/modx.class.php: 1031) `[[+id]]` is not a valid integer and may not be passed to makeUrl()
[2021-03-31 16:25:27] (ERROR in resource 3 @ /public_html/core/model/modx/modparser.class.php: 1374) Bad link tag `[[~[[+id]]]]` encountered
На 99% причина в этой строчке.
У вас выглядит как
У вас выглядит как
[$operator, $key] = $components;
а стоит заменить на list($operator, $key) = $components;
хорошо, понял
она не помогла ((
Дополнение с обновленной версией скачали 254 раза.
Ошибку, что ниже указали исправили. Будет выпущенно в новом релизе.
Ошибку, что ниже указали исправили. Будет выпущенно в новом релизе.
консоле вышла такая ошибка Failed to load resource: the server responded with a status of 500 ()
Версия php какая?
beget хостинг вроде 7.4
Скиньте доступы в ЛС
PHP Version 5.6.40 — Оказалось вот такая. Поднимите до 7.1 хотя бы
спасибо огромное всё было из за PHP Version. Поднял до 8 спасибо огромное ))
теперь буду знать ))
возможно ли откатить ка как нибудь назад?
Приветствую
Столкнулся с проблемой, когда товары в разных контекстах корзина не выводила товара, даже при указании контекста в вызове.
Полез в сниппет msCart, а он и не учитывал этот параметр, а брал текущий
prnt.sc/113uu0p
Дописал:
И это не только в msCart, во всех где есть инициализация и контекст такой недочет
@Иван Бочкарев, есть ли возможность поправить в след релизе? а то клиент вдруг обновится без моего ведома, а я исходник правил.
Столкнулся с проблемой, когда товары в разных контекстах корзина не выводила товара, даже при указании контекста в вызове.
Полез в сниппет msCart, а он и не учитывал этот параметр, а брал текущий
prnt.sc/113uu0p
$miniShop2->initialize($modx->context->key);
Дописал:
$context = $modx->getOption('context', $scriptProperties, $modx->context->key);
$miniShop2->initialize($context);
И это не только в msCart, во всех где есть инициализация и контекст такой недочет
@Иван Бочкарев, есть ли возможность поправить в след релизе? а то клиент вдруг обновится без моего ведома, а я исходник правил.
@Николай Савин @Алексей Смирнов Что скажете?
Нужно создать issue
Думаю это не баг. Просто нужно дополнить это дело предложенной настройкой и все.
Не берусь браться интерпретировать как баг, но в документации не совпадение с тем, что на самом деле.
prnt.sc/113zuqe
context общий параметр pdoTools
prnt.sc/113zuqe
context общий параметр pdoTools
когда товары в разных контекстах корзина не выводила товара, даже при указании контекста в вызове.А вы хотели чтобы в одном каком-то контексте у вас были показаны товары из разных контекстов?
Тогда зачем товары добавлялись из разных контекстов, если отображаются на одном каком-то определенном?
У меня Контексты это города. У каждого города свой каталог.
Есть еще общие страницы которые не стоило(не хотелось) дублировать во всех контекстах, например корзина или статьи, отсюда и переключение контекста
Вроде автор кода Илья Уткин
В целом я решил вопрос по другому, написал на событие добавления, чтобы он присваивал пустой контекст в корзине. По умолчанию там присваивался текущий. Для чего хранится контекст хз, отсюда как и на что это повлияет хз, но я заказы делал — полет нормальный.
Есть еще общие страницы которые не стоило(не хотелось) дублировать во всех контекстах, например корзина или статьи, отсюда и переключение контекста
Вроде автор кода Илья Уткин
// Поиск Страницы в другом контексте
if ($_SERVER['REQUEST_URI'] != '/') {
$uri = substr($_SERVER['REQUEST_URI'],1);
if (substr($uri,-5) != '.html' && substr($uri,-1) != '/') {
//$uri .= '/';
}
$resource = $modx->getObject('modResource', array('uri' => $uri, 'context_key' => $placeholders['cityContext']));
if (!empty($resource)) {
$ctx = $resource->get('context_key');
} else{
return '';
}
} else {
$ctx = 'web';
}
if ($ctx != $modx->context->key){
$modx->switchContext($ctx);
}
например я добавил товар в контексте kazan, если я переду на «общую» страницу будет контекст web, и он ничего не отобразит в миникорзине и в корзине самой. В целом я решил вопрос по другому, написал на событие добавления, чтобы он присваивал пустой контекст в корзине. По умолчанию там присваивался текущий. Для чего хранится контекст хз, отсюда как и на что это повлияет хз, но я заказы делал — полет нормальный.
case 'msOnAddToCart':
$tmp = $cart->get();
$tmp[$key]['ctx'] = '';
$cart->set($tmp);
break;
Хочу уточнить. Много где встречал упоминание, что modx в целом и minishop в частности хорошо работают с кодировкой таблиц utf8mb4
Почему я всегда при установке minishop получаю ошибку создания таблицы «ms2_options» при условии что у меня все таблицы в utf8mb4?
Если таблицы в utf8 то все ок
github.com/Ibochkarev/miniShop2/issues/391
Чего я не понимаю?
Версия minishop — последняя
mySql — 5.6.39
Почему я всегда при установке minishop получаю ошибку создания таблицы «ms2_options» при условии что у меня все таблицы в utf8mb4?
Если таблицы в utf8 то все ок
github.com/Ibochkarev/miniShop2/issues/391
Чего я не понимаю?
Версия minishop — последняя
mySql — 5.6.39
Прошу создать issue, чтобы не затерялось. Мы проверим
Добрый день. Подскажите. Пришлось письмо от PayPal
PayPal расширяет инфраструктуру мгновенных уведомлений о платежах, которая используется для информирования продавцов о событиях, связанных со статусом операций PayPal. В результате этого изменения к IP-адресам, с которых мгновенные уведомления о платежах отправляются с 18 января 2021 года, добавлены семь новых IP-адресов.
Ниже приведены все IP-адреса, используемые для мгновенных уведомлений о платежах.
66.211.170.66
173.0.81.1
173.0.81.0/24
173.0.81.33
173.0.81.65 (новый)
173.0.81.140 (новый)
64.4.240.0/21 (новый)
64.4.248.0/22 (новый)
66.211.168.0/22 (новый)
173.0.80.0/20 (новый)
91.243.72.0/23 (новый)
Дальнейшие действия
Если к мгновенным уведомлениям о платежах, получаемым от PayPal, применяется фильтрация IP-адресов или список управления доступом, рекомендуется добавить туда до 3 мая 2021 года все указанные выше IP-адреса.
На сколько я знаю реализация работы с PayPal идет с minishop2. Где можно пофиксить данные изменения?
Добрый день. В нашей версии Paypal проверка по IP адресам не используется вообще
это необходимо для того, чтобы какая-нибудь антидосс система вашего хостинга не блокировала платежи
Не, не обязательно. У многих платежек есть рекомендации слушать не только обращение к коннектору но и чекать IP. Все по делу написано.
Уважаемые разработчики. Вопрос не совсем по теме, но все же. Вдруг кто откликнется. Как из своей таблицы добавить данные в $_modx->resource, как это сделано в minishop2? Если что вот ссылка на вопрос. Очень не хватает компетентного ответа. modx.pro/help/21936
Можно еще написать Issue на github и мне с @Иван Бочкарев в личку. Тогда точно вопрос решится.
Ответ такой же какой и вопрос — посмотреть как это сделано в miniShop2
Ответ такой же какой и вопрос — посмотреть как это сделано в miniShop2
Добрый день. Столкнулся с проблемой: при загрузке нескольких изображений (абсолютно разных с разными именами) выскакивает ошибка. Проблема существует уже давно. Есть топик с решением modx.pro/help/12445. Решение работает, но к сожалению при обновлении Minishop2 это все исчезнет. Если есть возможность исправить в будущем обновлении, был бы благодарен. Спасибо.
Добрый день. Создайте запись-напоминалку в репозитарии проекта на github. Обязательно решим вопрос.
Да сделал. Спасибо.
Ребят, не в первый раз ошибка при установке минишопа
prnt.sc/1gnp58t
Последние релизы модх ставятся не с той кодировкой
prnt.sc/1gnq1kd
Даже если ставишь свежий модх с кодировкой которая была раньше, все равно при установке минишопа ошибка.
Приходится устанавливать сначала версию модх 2.7.3(т.е. все ок с кодировкой), установить минишоп, потом повышать модх до последней.
хостинг Таймвеб, версия MySQL 5.6
prnt.sc/1gnp58t
Последние релизы модх ставятся не с той кодировкой
prnt.sc/1gnq1kd
Даже если ставишь свежий модх с кодировкой которая была раньше, все равно при установке минишопа ошибка.
Приходится устанавливать сначала версию модх 2.7.3(т.е. все ок с кодировкой), установить минишоп, потом повышать модх до последней.
хостинг Таймвеб, версия MySQL 5.6
Последние релизы модх ставятся не с той кодировкойСтавятся с нормальной кодировкой, так уже давно:
prnt.sc/1gnq1kd
Обнуляющие смайлики (или почему minishop2 отправляет заказы без товаров)
Сам минишоп также устанавливается без проблем, можно проверить на том же modhost.pro. Это вопрос к настройкам хостинга, возможно старый сервер на аккаунте, с MySql 5.7 таких проблем нет.
Андрей, ну слишком у многих возникает такая проблема. О ней писал и я выше, и на гитхабе просто куча issue по этому поводу. Явно есть проблема. Стоит при установке modx выбрать кодировку utf8mb4, прислушавшись совета Василия, который он дает по той ссылке, что вы написали
Кстати, хорошо бы, чтобы для minishop были указаны минимальные требования к программному обеспечению, поскольку ничего кроме
Насчет modhost может вы и правы, если бы на нем возникали проблемы, то это было бы уж совсем странно, но мне кажется modhost мало популярен среди разработчиков изза своей высокой стоимости. Если сравнить по стоимость тариф популярный на modhost за 360 рублей (8 гиг, 256 мегабайт памяти, всего один сайт, всего 6 процессов) то за те же деньги на timeweb можно приобрести vds с 30 гигами на nvme 2 гигами оперативки и полным контролем над этим выделенным сервером.
Ну ок, поддерживает utf8mb4 с версии 2.6.0, которая вышла в 2017 году.а потом начать установку minishop как появится ошибка при создании таблицы с опциями. Возможно многие просто ее не замечают, поскольку магазин работает если не пользоваться опциями. Да, таблицу можно потом создать вручную sql запросом, но это не очень правильно.
А если ты её не используешь — то сам себе злобный буратино
Кстати, хорошо бы, чтобы для minishop были указаны минимальные требования к программному обеспечению, поскольку ничего кроме
этот компонент требует версию PHP 5.3 или вышенайти не удалось.
Насчет modhost может вы и правы, если бы на нем возникали проблемы, то это было бы уж совсем странно, но мне кажется modhost мало популярен среди разработчиков изза своей высокой стоимости. Если сравнить по стоимость тариф популярный на modhost за 360 рублей (8 гиг, 256 мегабайт памяти, всего один сайт, всего 6 процессов) то за те же деньги на timeweb можно приобрести vds с 30 гигами на nvme 2 гигами оперативки и полным контролем над этим выделенным сервером.
Есть предложение на счет сниппета msOrder. Для авторизованных пользователей при заходе на страницу с msOrder подтягиваются поля из личного кабинета — это все очень хорошо, но если пользователь изменил какое-то поле например city то после перезагрузки страницы, данные перезаписуться на те которые сохранены в кабинете. Предлагаю переделать 152 срока на:
$value = $order[$value] ?: $profile[$value];
Оставьтеissue в репозитории проекта — пощупаем этот момент.
Внезапно, но на версии modx-2.7.2 и minishop2-2.6.0 возникла проблема. Причем возникла как: с утра работало абсолютно все и проходили оплаты, с обеда отвалилось… Развитие симптомов: при оформлении заказа, после того как пользователь заполнял свои данные (телефон, e-mail, ФИО) и нажимал кнопку «Отправить» происходил редирект на платежку Tinkoff (использую mspTinkoff) и далее после успешной оплаты происходил обратный редирект на successpage на сайте (/order/success.html?msorder=XX). Все штатно, без нареканий. Но, что-то сломалось и теперь не происходит редиректа на платежку Tinkoff — пользователь нажимает кнопку «Отправить» и не происходит ничего… Вернее, там «под капотом» все же происходит кое что интересное: в консоли браузера видно обращение по XHR к action.php. Туда отправляется вот что:
Что сломалось — ума не приложу. Обновил уже все компоненты, но ничего не изменилось. Прошу посильной помощи уважаемого сообщества.
payment: 5
delivery: 2
email: somebody@mail.com
receiver: Иван Иванов
phone: +7 (903) 90390390
ms2_action: order/submit
ctx: web
а вот response выглядит странно:<html>
<head></head>
<body>
Array
(
[id] => 108
[user_id] => 7
[createdon] => 2021-08-24 18:15:15
[updatedon] =>
[num] => 2108/8
[cost] => 3000
[cart_cost] => 3000
[delivery_cost] => 0
[weight] => 0
[status] => 1
[delivery] => 2
[payment] => 5
[address] => 108
[context] => web
[comment] =>
[properties] =>
[type] => 0
)
1
</body>
</html>
И самое интересное — заказ создается… Т.е. на этом этапе он уже есть в админке. Со статусом «Новый». Вот только пользователь остается там же — на странице оформления заказа, без возможности оплатить.Что сломалось — ума не приложу. Обновил уже все компоненты, но ничего не изменилось. Прошу посильной помощи уважаемого сообщества.
И еще что характерно… Если раньше пользователю, при смене статуса заказа на «Новый» сразу приходило письмо, то теперь письма не приходят.
Может плагин левый на изменение статуса заказа. Ну так не угодаешь. Надо цепочку создания заказа смотреть.
Могу посмотреть. Стоимость часа 600р. Если устраивает пиши на t.me/touols
Могу посмотреть. Стоимость часа 600р. Если устраивает пиши на t.me/touols
Здравствуйте. Ну тут нужно оттталкиваться от того что делали с сайтом в этот период.
Либо плагины какие то подключили на события минишопа,
Либо классы переписали, переопределили.
Либо плагины какие то подключили на события минишопа,
Либо классы переписали, переопределили.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.