[miniShop2] Версия 2.4.4 - исправление ошибок
Для обновления доступна новая версия ms2 с исправлением ошибок. Так как я ничего не анонсировал со времён rc версии, пишу здесь список изменений с того момента.
— Исправлена ошибка с перезаписью опций товара при его обновлении в таблице категории.
— Исправлена ошибка с отображением страницы товара при отключении настройки ms2_product_tab_gallery.
— [#227] Оптимизирована работа с большим количеством опций и категорий в настройках опций.
— [#228] Вроде исправлена ошибка с «передан пустой файл» в галерее на некоторых конфигурациях серверов с php 5.3
— [#230] Исправлена ошибка с невозможностью изменить выбранного производителя товара.
— [#231] Сниппет msOptions теперь передаёт id обрабатываемого товара в чанк.
— [#236] Добавлена возможность вывода колонок категории заказанного товара в окошке заказа.
— [#237] Исправлена работа метода msProductData::get('options').
— [#229, #238] Дерево категорий в свойствах товара теперь понимает системную настройку resource_tree_node_name_fallback для вывода имени.
— [#239] Исправлено сохранение пустых или дублирующих опций товара.
— [#240] Исправлено обнуление полей с датами товара при его редактировании в таблице категории.
— [#212, #240] Исправлена работа опций товара с точкой в имени — теперь она принудительно заменяется на подчёркивание.
— [#242] Добавлена возможность указывать только нужные опции для вывода в параметре &onlyOptions сниппета msProductOptions.
Как и вся ветка 2.4, обновление пока доступно только для пользователей репозитория modstore.pro.
Обновляемся, пишем отзывы.
— Исправлена ошибка с перезаписью опций товара при его обновлении в таблице категории.
— Исправлена ошибка с отображением страницы товара при отключении настройки ms2_product_tab_gallery.
— [#227] Оптимизирована работа с большим количеством опций и категорий в настройках опций.
— [#228] Вроде исправлена ошибка с «передан пустой файл» в галерее на некоторых конфигурациях серверов с php 5.3
— [#230] Исправлена ошибка с невозможностью изменить выбранного производителя товара.
— [#231] Сниппет msOptions теперь передаёт id обрабатываемого товара в чанк.
— [#236] Добавлена возможность вывода колонок категории заказанного товара в окошке заказа.
— [#237] Исправлена работа метода msProductData::get('options').
— [#229, #238] Дерево категорий в свойствах товара теперь понимает системную настройку resource_tree_node_name_fallback для вывода имени.
— [#239] Исправлено сохранение пустых или дублирующих опций товара.
— [#240] Исправлено обнуление полей с датами товара при его редактировании в таблице категории.
— [#212, #240] Исправлена работа опций товара с точкой в имени — теперь она принудительно заменяется на подчёркивание.
— [#242] Добавлена возможность указывать только нужные опции для вывода в параметре &onlyOptions сниппета msProductOptions.
Как и вся ветка 2.4, обновление пока доступно только для пользователей репозитория modstore.pro.
Обновляемся, пишем отзывы.
Комментарии: 46
Большое спасибо за обновления, Василий.
Особенно за #230 и #240. Все работает отлично.
Особенно за #230 и #240. Все работает отлично.
Есть маленький баг, с которым редко, кто столкнется, но тем не менее:
если в настройках Minishop2 в grid категории товаров добавлено поле vendor и попытаться его обновить из категории товаров, то при двойном щелчке подставится не текущий производитель, а первый, т.к. в запросе получения категорий пустой id:
если в настройках Minishop2 в grid категории товаров добавлено поле vendor и попытаться его обновить из категории товаров, то при двойном щелчке подставится не текущий производитель, а первый, т.к. в запросе получения категорий пустой id:
action: mgr/settings/vendor/getlist
id:
Здравствуйте! Спасибо большое за отличный компонент. А возможно ли сделать так, чтобы каждому пользователю зарегистрированному задать свои цены на товары (не скидка)? если да, то куда рыть?
при установке на свежий сайт, невозможно зайти в админку по причине 500 ошибки.
в логах:
в логах:
PHP message: PHP Fatal error: Call to a member function makePlaceholders() on null in www/core/components/minishop2/model/minishop2/minishop2.class.php on line 432" while reading response header from upstream
Судя по всему это потому что перед установкой не был установлен pdoTools
Всю дорогу pdoTools устанавливался автоматически:
Проверил на modhost.pro, MODX 2.5.1 — всё ок. Не нужно дезинформировать окружающих.
Проверил на modhost.pro, MODX 2.5.1 — всё ок. Не нужно дезинформировать окружающих.
конечно я пробовал не на modhost.pro -) видимо мой сервер не так тонко настроен
При вызове с одним значением опции%
{$_modx->runSnippet('!msOptions', [
'options' => 'lens_opticalpower',
])}
не выводит его. Если добавить еще одно то сразу список появляется.
Василий, почему-то не могу добавить issue на Гитхабе. У версии 2.4.4 и у новой 2.4.5 у созданных опций товара типа чекбокс значения в таблицу пишутся, но при повторном открытии карточки товара выделение чекбокса слетает.
Василий! не знаю куда писать поэтому пишу здесь
thumbnailType — PNG, не работает!
вроде настроил как всегда а не робит, делает заливку на прозрачный фон, попробовал щас на
s7709.h7.modhost.pro/
тоже самое, хотя на предыдущих проектах все на ура работало!
Параметры thumbnails — [{«w»:300,«h»:300,«q»:80,«zc»:«0»,«bg»:«000000»}]
Вообще не понимаю в чем косяк! Компоненты все самые свежие!
thumbnailType — PNG, не работает!
вроде настроил как всегда а не робит, делает заливку на прозрачный фон, попробовал щас на
s7709.h7.modhost.pro/
тоже самое, хотя на предыдущих проектах все на ура работало!
Параметры thumbnails — [{«w»:300,«h»:300,«q»:80,«zc»:«0»,«bg»:«000000»}]
Вообще не понимаю в чем косяк! Компоненты все самые свежие!
«bg»:«000000» замени на ffffff будет белое
«Вроде исправлена ошибка с «передан пустой файл» в галерее на некоторых конфигурациях серверов с php 5.3»
Только что столкнулся как раз на 5.3: при создании товара сразу создаётся пустой файл в галерее. Иногда 2 штуки, но вижу я такое при попытке импорта из 1С посредством mSync.
http://prntscr.com/cns14q
Также выявлена такая ошибка: если меняем стандартное превью (в настройках и источнике файлов) на, например, 100x100, то в карточке товара и в списке товаров всё равно путь стоит 120x90. В галерее тоже вместо превью — дефолтное изображение.
Могу дать доступ к тесту, где можно видеть такие сбои.
Только что столкнулся как раз на 5.3: при создании товара сразу создаётся пустой файл в галерее. Иногда 2 штуки, но вижу я такое при попытке импорта из 1С посредством mSync.
http://prntscr.com/cns14q
Также выявлена такая ошибка: если меняем стандартное превью (в настройках и источнике файлов) на, например, 100x100, то в карточке товара и в списке товаров всё равно путь стоит 120x90. В галерее тоже вместо превью — дефолтное изображение.
Могу дать доступ к тесту, где можно видеть такие сбои.
Есть вопрос по поводу вывода option-ов. Раньше у меня был чанк, который назывался tpl.msCartRow, в котором например option.size выводился просто как [[+option.size]], при этом выводился следующий текст:
Размер: 46-60; но после перехода на Phenom и один единственный чанк tpl.msCart с foreach всё сломалось. Как мне вернуть старое поведение? Когда я вывожу {$product['option.size']} я получаю вывод 46-60
Размер: 46-60; но после перехода на Phenom и один единственный чанк tpl.msCart с foreach всё сломалось. Как мне вернуть старое поведение? Когда я вывожу {$product['option.size']} я получаю вывод 46-60
Причём похоже такая проблема наблюдается только в Fenom, когда я пробую стандартный шаблонизатор всё ок
Добрый день. Спасибо за компонент, есть небольшой вопрос — если товар имеет несколько категорий то во всех категориях где он показывается он имеет урл основной категории… это не очень удобно в плане навигации… можно ли сделать так чтобы уры товара одного товара были разными?
Seoшники тебя проклянут!
Я в курсе, но заказчик хочет чтобы хлебные крошки «не разваливались»
Здравствуйте, у меня подключен репозиторий modstore, но почему-то доступна возможность обновиться только до 2.2.0. Можете подсказать в чем может быть дело? Modx версии 2.3.2. Проблема в этом?
Приветствую! Подскажите пожалуйста:
1. Не могу понять как получить массив $data в событии, не выводится ничего
2. Как из options удалить Опцию, т.е. чтоб она в корзине не отображалась?
Вот весь код плагина:
1. Не могу понять как получить массив $data в событии, не выводится ничего
Еще в этом событии есть массив $data — дополнительные параметры, присланные юзером при добавлении товара в корзину. Там может быть цвет, размер и вообще, что угодно.И как в него что-то передать? Пробовал просто input
<input type="hidden" name="newPrice" value="123123">
//или так
<input type="hidden" name="data[newPrice]" value="qweqweqwe">
в плагине пытаюсь получить его, ничего не выводит, даже array( ) не выводит$modx->log(modX::LOG_LEVEL_ERROR, print_r($data,true));
2. Как из options удалить Опцию, т.е. чтоб она в корзине не отображалась?
Вот весь код плагина:
switch ($modx->event->name) {
case 'msOnBeforeAddToCart':
$modx->log(modX::LOG_LEVEL_ERROR, print_r($options,true));
$modx->log(modX::LOG_LEVEL_ERROR, print_r($data,true));
$product->set('price', $options['newPrice']);
unset($options['newPrice']);
break;
Почему опция товара (как и свойство товара) с типом Множественный список и ТВ с типом Список (множественный выбор) различаются по функционалу?
Внешне вроде бы так же, но в опции при выборе пункта из списка, список закрывается и нужно снова открывать его. Очень неудобно, когда нужно добавлять несколько пунктов, о нажатой Shift вообще речи тут не идёт, не получится…
В то время как в ТВ-шке множественный выбор работает очень удобно — при нажатии на пункт списка, сам список не закрывается и можно быстро нащёлкать все нужные пункты.
Только из-за этого пришлось отказаться от встроенного поля size в пользу ТВ поля tv_size — но уж очень хотелось бы чтобы и в минишопе это поле работало корректно.
Внешне вроде бы так же, но в опции при выборе пункта из списка, список закрывается и нужно снова открывать его. Очень неудобно, когда нужно добавлять несколько пунктов, о нажатой Shift вообще речи тут не идёт, не получится…
В то время как в ТВ-шке множественный выбор работает очень удобно — при нажатии на пункт списка, сам список не закрывается и можно быстро нащёлкать все нужные пункты.
Только из-за этого пришлось отказаться от встроенного поля size в пользу ТВ поля tv_size — но уж очень хотелось бы чтобы и в минишопе это поле работало корректно.
Не удаляются изображения товара, при удалении самого товара
[2016-11-21 06:10:16] (ERROR @ /***public_html/core/components/minishop2/model/minishop2/msproductfile.class.php: 255) Could not remove file at «63/640x480/1469898486451-bulletin.jpg»: file_folder_err_ns: /***/public_html/assets/images/products/63/640x480/1469898486451-bulletin.jpg
[2016-11-21 06:10:16] (ERROR @ /***public_html/core/components/minishop2/model/minishop2/msproductfile.class.php: 255) Could not remove file at «63/640x480/1469898486451-bulletin.jpg»: file_folder_err_ns: /***/public_html/assets/images/products/63/640x480/1469898486451-bulletin.jpg
аналогичная ошибка в логах постоянно выскакивает
Присоединяюсь, есть такие ошибки, дополнительно проверил на чистой последней версии на modhostе — тоже самое.
Хотел запилить issue на гитхабе, но Василий отключил похоже эту функцию. Надеюсь, что временно.
Ошибка возникает при очистке удаленных товаров, при этом изображения на самом деле удаляются, а папки пустые остаются.
Хотел запилить issue на гитхабе, но Василий отключил похоже эту функцию. Надеюсь, что временно.
Ошибка возникает при очистке удаленных товаров, при этом изображения на самом деле удаляются, а папки пустые остаются.
Здравствуйте. Т.к. удален чанк tpl.msOrder.success куда можно вписать код для отображения благодарности за оформление покупки?
я так предполагаю что в tpl.msOrder, но нигде не нашел примера как. Смотрел в код msOrder — то же не нашел
я так предполагаю что в tpl.msOrder, но нигде не нашел примера как. Смотрел в код msOrder — то же не нашел
есть словарь, там ключ
вот ссылка на скриншот joxi.ru/DmBJORjilX0DmP
ms2_frontend_order_success
, вот его содержание: Спасибо за оформление заказа #[[+num]] на нашем сайте [[++site_name]]!
как минимум туда можно добавить свой текст, чанк с данным лексиконом пока не нашелвот ссылка на скриншот joxi.ru/DmBJORjilX0DmP
а у меня нет такого параметра вот скрин prntscr.com/djursq
есть словарь, там ключпоказываю как найти словарь: joxi.ru/a2XWRYoIz03amg
там дальше joxi.ru/LmGy1poT84GNAl
и следом joxi.ru/E2pe4nxSqODoAY
и там уже ищи ключ
а ты сейчас в системных настройках
точно, вместо словаря в параметрах смотрел :) Только он все равно не работает у меня, т.е. после оформления не выводит на экране. Пустой экран.
да точно, еще не тестил корзину с новой версией и не выводит данный словарь, можно добавить в чанк
Из знающих как теперь его вывести в благодарости?
{'ms2_frontend_order_success' | lexicon}
выведет фразу, НО не подхватывает номер заказа.Из знающих как теперь его вывести в благодарости?
да, мне тоже интересен данный вопрос. И как вывести уникальный номер товара? в msGetOrder?
{$order.num}
точно, я по запаре {$order.nom} искал :)
Нашел в коде msGetOrder Id товара {$product.id} и id заказа {$order.id}. Не могу найти именно номер заказа.
по поводу success я там ничего не нашел
Все, разобрался. Всем спасибо кто откликнулся на мой вопрос.
Вывел через [[!msGetOrder? &tpl=`my.tpl.success`]]
Вывел через [[!msGetOrder? &tpl=`my.tpl.success`]]
Ну, в общем, я на это и намекал, просто писал с планшета и скриншот со стрелочкой было сложно делать :)
{if $.get['msorder']?}
{include 'tpl.msOrder.success'} // чанк с текстом благодарности
{/if}
только тут еще проверку желательно сделать на то что данный заказ принадлежит именно текущему пользователю
Добрый день подскажите где можно скачать minishop 2.4.7 старую версию очень нужно
Добрый день. На гитхабе нет возможности написать issue в ветке minishop2, поэтому пишу сюда.
Обнаружился следующий баг на мультидоменном сайте на версии 2.4.8-pl2:
В письма о смене статуса заказа ставится emailsender из контекста web.
Временно решил проблему:
поставив emailsender в контексте mgr на нужный и в файле core/components/minishop2/model/minishop2/minishop2.class.php строка 627
Обнаружился следующий баг на мультидоменном сайте на версии 2.4.8-pl2:
В письма о смене статуса заказа ставится emailsender из контекста web.
Временно решил проблему:
поставив emailsender в контексте mgr на нужный и в файле core/components/minishop2/model/minishop2/minishop2.class.php строка 627
if (empty($this->order) || !is_object($this->order)) {
// $ctx = !$this->modx->context->key || $this->modx->context->key == 'mgr'
// ? 'shop'
// : $this->modx->context->key;
$this->initialize('ctx2'); //ctx2 - второй контекст фронта
}
После обновления все затрется, придется менять заново.
Подскажите, как сделать нумерацию в корзине?
Есть вот такой объект
Как мне сделать, чтобы парсер искал сразу переменную {$vendor.name}?
Array
(
.........
[vendor] => 1
[made_in] => Россия
[new] => 0
[popular] => 0
[favorite] => 0
.........
[source] => 2
[vendor.name] => Happy Ocean
[vendor.resource] => 0
[vendor.country] => Россия
[vendor.logo] =>
[vendor.address] =>
[vendor.phone] =>
[vendor.fax] =>
[vendor.email] =>
[vendor.description] =>
[vendor.properties] =>
.........
)
Подскажите, как вывести {$vendor.name}? Парсер находит переменную {$vendor} и ищет у нее свойство name, а его нет.Как мне сделать, чтобы парсер искал сразу переменную {$vendor.name}?
Сам спросил, сам ответил
Плейсхолдеры с точкой или тире
Во многих местах MODX используются плейсхолдеры, которые нельзя указывать в Fenom, так как они не соотвествуют правилам наименования переменных PHP. Например, плейсхолдеры с точкой (MODX обычно выставляет так данные массивов) или с тире (ТВ параметры).
Для доступа к этим плейсхолдерам нужно использовать вторую служебную переменную — {$_pls}:
Плейсхолдеры с точкой или тире
Во многих местах MODX используются плейсхолдеры, которые нельзя указывать в Fenom, так как они не соотвествуют правилам наименования переменных PHP. Например, плейсхолдеры с точкой (MODX обычно выставляет так данные массивов) или с тире (ТВ параметры).
Для доступа к этим плейсхолдерам нужно использовать вторую служебную переменную — {$_pls}:
<!-- Вывод сразу -->
{$_pls['tag.subtag']}
<!-- Или через переменную -->
{var $tv_name = $_pls['tv-name']}
{$tv_name}
Доброго времени суток.
Подскажите может ли сортировать msProducts по idx? на данный момент установлен minishop 2.4.9-pl и pdoTools 2.8.2-pl1 в журнале ошибок пишет
Подскажите может ли сортировать msProducts по idx? на данный момент установлен minishop 2.4.9-pl и pdoTools 2.8.2-pl1 в журнале ошибок пишет
[2017-03-18 07:20:21] (ERROR @ /home/m/maxim88/prazdnik/public_html/core/components/pdotools/model/pdotools/pdofetch.class.php : 171) [pdoTools] Error 42S22: Unknown column 'idx' in 'order clause'
Невозможно изменить выбранного производителя у товара
miniShop2 версия 2.4.9-pl проблема актуальна — не меняется производитель. Как можно поправить?
miniShop2 версия 2.4.9-pl проблема актуальна — не меняется производитель. Как можно поправить?
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.