Инструкция по переходу с WebAsyst Shop-Script на Shop-Script 7

Сравнить процесс перехода c WebAsyst Shop-Script на Shop-Script 7 правильно не с обычным обновлением, а с переходом с одной системы на другую. Например, с iOS на Android или с Windows на Mac.

Shop-Script 7 — это не просто обновление для WebAsyst Shop-Script, а полностью новая версия продукта, написанная с нуля. Абсолютно новый «движок». Создание с нуля позволило нам реализовать множество новых полезных возможностей и избавиться от недостатков прежней версии.

Переход производится как открытие нового магазина на Shop-Script 7 и замещение им прежнего, работающего на основе WebAsyst Shop-Script. Процесс перехода состоит из четырех шагов:

  1. Установить Shop-Script 7 по некоторому временному адресу. Например, http://yourdomain.ru/newshop/ или http://newshop.yourdomain.ru/
  2. Перенести в новый магазин все данные и настройки из вашего существующего магазина, работающего на основе WebAsyst Shop-Script. Все данные магазина (товары, заказы и т.д.) переносятся автоматически с помощью специального плагина. Дизайн же и индивидуальные доработки исходного кода перенести автоматизированно технически невозможно.
  3. Настроить дизайн и другие параметры вашего нового магазина на основе Shop-Script 7, изучить систему.
  4. После завершения этих действий необходимо заменить старый магазин новым.

О каждом пункте подробнее далее.

1. Установка Shop-Script 7

Скрипты

Shop-Script 7 — это приложение, разработанное на основе фреймворка Вебасист, поэтому для его установки необходимо сначала установить фреймворк, как описано ниже.

  1. Согласно инструкции установите фреймворк Вебасист по отдельному временному адресу — например, на поддомене основного доменного имени вашего магазина. Если ваш интернет-магазин доступен по адресу вида http://yourdomain.ru, то в качестве временного адреса можно использовать http://test.yourdomain.ru.
  2. Войдите в бекенд установленного фреймворка, перейдите в приложение «Инсталлер» и установите Shop-Script 7 в разделе «Приложения».
  3. Если вы не авторизованы в Центре заказчика, вам будет предложено ввести ваш электронный адрес и пароль. Войдя в Центр заказчика, выберите лицензию Shop-Script 7, после чего начнется установка.

После завершения установки войдите в бекенд приложения «Магазин». При первом входе вам будет предложено выполнить автоматическую настройку некоторых параметров: валют, налогов и типов товаров. Этот шаг можно пропустить, но он может сэкономить ваше время при настройке интернет-магазина. Автоматически созданные настройки можно впоследствии изменить либо удалить.

Аренда в облаке

Если вы не хотите связываться с установкой скриптов на своем сервере, создайте магазин в нашем облаке.

При регистрации для вас будет создан аккаунт по временному адресу yourdomain.webasyst.cloud с предустановленным Shop-Script 7, на котором вы сможете попробовать все новые возможности продукта, а затем и подключить к новому магазину ваше собственное доменное имя yourdomain.ru.

2. Перенос данных

Для переноса данных из магазина, созданного на базе WebAsyst Shop-Script, в новую версию необходимо использовать плагин «Переход на Shop-Script». Чтобы установить плагин, перейдите в раздел «Плагины» приложения «Инсталлер» и нажмите на кнопку установки в секции «По приложению → Shop-Script».

После установки плагина перейдите в бекенд Shop-Script 7, откройте раздел «Импорт/экспорт» и щелкните по названию плагина «Переход на Shop-Script».

В списке выбора платформы выберите подходящий вариант:

  • WebAsyst Shop-Script (старая версия) на этом же сервере — если вы установили Shop-Script 7 на том же сервере, где установлен рабочий магазин, созданный на базе WebAsyst Shop-Script.
  • WebAsyst Shop-Script (старая версия) на удаленном сервере — если вы установили Shop-Script 7 на другом сервере либо если ваш магазин создан на базе веб-сервисов WebAsyst (по адресу вида http://account.webasyst.net).

Выполните указанные на странице инструкции и нажмите на кнопку подтверждения, чтобы начать импорт данных.

Внимание: если в вашем магазине хранится большое количество категорий, товаров и изображений товаров, то импорт может занять продолжительное время — до нескольких часов. Не закрывайте страницу импорта до завершения переноса данных.

После завершения импорта на странице появится уведомление с краткой статистической информацией:

3. Настройка нового интернет-магазина

Плагин импорта не копирует настройки модулей доставки и оплаты, налогов, валют и скидок, поэтому настроить эти параметры необходимо вручную — в соответствующих разделах секции «Настройки». Частично такая настройка выполняется при первом входе в раздел администрирования интернет-магазина сразу после установки, как описано выше.

Дизайн и индивидуальные доработки

В связи с тем, что в новом Shop-Script 7 реализована новая и значительно более гибкая система управления дизайном, перенести существующий дизайн из WebAsyst Shop-Script технически невозможно (равно как и индивидуальные доработки исходного кода WebAsyst Shop-Script). Настроить дизайн в новом интернет-магазине также необходимо вручную. Shop-Script поставляется с несколькими готовыми темами оформления, на основе которых удобно простроить свой собственный уникальный дизайн. Встроенный редактор дизайна предоставляет возможность использовать весь инструментарий шаблонизатора Smarty. Новую тему дизайна можно установить в разделе «Темы» приложения «Инсталлер».

Помимо стандартных возможностей Smarty, в шаблонах можно также использовать системные переменные и объекты (хелперы) Вебасиста — для вставки в шаблон часто используемых элементов, например, URL'а витрины или списка товаров. Список таких переменных с их описаниями содержится во вспомогательном блоке редактора «Шпаргалка».

4. Замена старого магазина новым

Для окончательного перехода на Shop-Script 7 осталось перенаправить посетителей вашего старого магазина на новую витрину, как описано ниже.

Внимание: для работы Shop-Script 7 необходимо иметь собственное зарегистрированное доменное имя. Если ваш интернет-магазин создан на основе веб-сервисов WebAsyst и доступен только по адресу вида http://accountname.webasyst.net/shop/ и не имеет самостоятельного доменного имени, то перевод магазина с WebAsyst Shop-Script на Shop-Script 7 с сохранением этого адреса будет невозможен. В этом случае вы сможете только перенести ваш магазин со всеми товарами и заказами на самостоятельное доменное имя.

1. В разделе «Настройки» системного приложения фреймворка «Сайт» в поле «Адрес сайта» вместо временного адреса введите правильное доменное имя, на котором в данный момент работает старый магазин.

2. В разделе «Структура» (маршрутизация) приложения «Сайт» убедитесь в том, чтобы для приложения «Магазин» была указана маска адресов, соответствующая адресам вашего старого магазина.

Например, если ваш старый магазин установлен в корне доменного имени по адресу вида http://yourdomain.ru/, то в качестве маски адресов следует указать звездочку: *

Если ваш старый магазин доступен только в «подпапке» домена по адресу вида http://yourdomain.ru/shop/, то в качестве маски нужно указать значение shop/*

Если для приложения «Магазин» вы указали маску адресов, совпадающую с маской адресов приложения «Сайт», то удалите правило маршрутизации для приложения «Сайт». В этом случае все запросы посетителей сайта будут обрабатываться приложением Shop-Script 7. Иначе говоря, весь ваш сайт будет представлять из себя только интернет-магазин. Впоследствии вы сможете добавить новые правила для обработки адресов; более подробно об этом читайте в статье «Сайты и маршрутизация».

3. В списке правил маршрутизации перейдите в область настройки поселения приложения «Магазин». Для этого нужно щелкнуть по иконке «шестеренка» напротив правила маршрутизации «Магазина». Если в вашем старом интернет-магазине на базе WebAsyst Shop-Script был включен режим ЧПУ, то в настройках поселения для параметра «URL страниц» выберите вариант «Плоский»:

Это нужно для того, чтобы сохранился трафик на адресах страниц, которые уже проиндексированы поисковыми системами.

Если для вас неважно сохранение этого трафика, вы можете выбрать любой другой тип адресов.

Внимание: для перенаправления запросов с любых старых адресов страниц WebAsyst Shop-Script на любой тип адресов Shop-Script 7 используйте плагин «WebAsyst Shop-Script 301 Redirect». Без использования этого плагина сохранение трафика будет выполняться только с ЧПУ-адресов WebAsyst Shop-Script на «Плоский» тип адресов Shop-Script.

4. Настройте ваше доменное имя таким образом, чтобы запросы посетителей сайта направлялись на директорию веб-сервера, в которой установлен Shop-Script 7. Если старый и новый интернет-магазины установлены на одном сервере, то простой способ заменить старый магазин новым — 1) создать новую папку для хранения файлов старого магазина, 2) перенести все файлы старого магазина в эту папку и 3) перенести все файлы нового магазина (вместе с файлами фреймворка Вебасист) на место старого магазина.

Для удобного перехода с WebAsyst Shop-Script на Shop-Script 7 вам понадобятся следующие плагины:

71 комментарий

  • 0
    Нужна пошаговая инструкция по переносу магазина с одного хостинга на другой и с одного домена на другой.

    З.Ы. При смене домена для приложения Сайт исчезают все настройки Гугл Аналитикс, robots.txt и авторизации через социальные сети. (Когда нужно перенести фреймворк на другой домен или с субдомена).
    Не знаю баг это или фича, но лично мне не удобно. Приходится открывать 2 вкладки, на второй менять домен и копировать данные из первой вкладки, потом сохранять.
    • +1
      Михаил Ушенин Михаил Ушенин Webasyst 16 сентября 2013 03:16 #
      Возможно, это будет полезно: http://www.webasyst.ru/developers/docs/installation/change-location/
      • +2
        Я бы не назвал это пошаговой инструкцией понятной обычному пользователю.
        Сам трудностей с переносом пока не испытывал.
      • +1
        Elena - Elena - 22 ноября 2015 10:59 #

        Михаил, добрый день. Согласно пункту номер 4 в данной статье осуществила переезд. Но теперь, когда захожу на сайт - вместо сайт вижу админку.

        hoztovar-opt.ru

        В чем может быть причина?

        • +1
          Михаил Михаил 22 ноября 2015 14:49 #

          Сейчас навскидку помню несколько мест, которые надо посетить.

          1. Админка - Инсталлер - Настройки - Адрес сайта.

          2. Админка - Сайт - ваш.домен - Настройки - Доменное имя.

          3. Админка - Сайт - ваш.домен - Структура. Там должно быть как минимум одно правило - адресу http://ваш.домен/* должно быть поставлено в соответствие приложение "Магазин" с соответствующими настройками.

        • 0
          %username% 1 ноября 2013 08:28 #
          Непонятен последний - 4-й пункт. На хостинге мясо какое-то просто в корневой директории... и непонятно что из себя представляет старый магазин webasyst - дайте пример какие файлы и папочки следует сохранить как "старый магазин". Или же не париться и всё в папке "public_html" считать старым магазином? соответственно сливать в одну папку и полностью заменять на новый магазин?
          • +1
            В новой версии (Shop-Script 5, фреймворк Webasyst) папки имеют такие названия: wa-apps, wa-data, wa-system и т.д.

            В старой версии (WebAsyst Shop-Script): data, published, kernel, system
            • +1
              Kirilliuss Kirilliuss 2 декабря 2014 09:07 #

              ПО старой версии только эти data, published, kernel, system папки или еще есть какие?, просто файлы лежат их надо переносить

            • +1
              Iwan Iwan 10 марта 2014 07:47 #
              поставил новый движок на поддомен и перенес все на
              new.***.com

              проверяю
              старая страница ***.com/shop/product/2835/
              работает

              новая
              http://new.spasik.com/shop/product/2835/
              нет
              PAGE NOT FOUND
              404. Запрошенный ресурс недоступен.

              Плагин WebAsyst Shop-Script 301 Redirect установлен и работает.

              Как переезжать-то?


              PAGE NOT FOUND
              404. Запрошенный ресурс недоступен.
              • 0
                Михаил Ушенин Михаил Ушенин Webasyst 11 марта 2014 04:22 #
                Витрина нового магазина у вас доступна по адресу http://new.spasik.com/, а не http://new.spasik.com/shop/, потому и Not Found. Поселите новый магазин по адресу http://new.spasik.com/shop/ для начала.
                • 0
                  Iwan Iwan 11 марта 2014 12:19 #
                  Получается, надо настроить две маршрутизации на магазин - одну с прямого адреса - new.spasik.com - чтобы при заходе на главную страницу попадать в магазин, и вторую - с new.spasik.com/shop - чтобы ссылки корректно перенеслись. Я правильно понял?
                  • 0
                    Михаил Ушенин Михаил Ушенин Webasyst 12 марта 2014 02:08 #
                    Если вы хотите сохранить трафик на проиндексированные адреса страниц, то надо создать поселение с таким же адресом витрины, который у вас был раньше. Если у вас был domain.ru/shop/, то и витрину нового магазина нужно настраивать с адресом domain.ru/shop/. Вы, видимо, хотите убить сразу двух зайцев: и адрес витрины поменять, и перенести трафик со старого адреса на новый?
                    • 0
                      Iwan Iwan 13 марта 2014 23:49 #
                      адрес витрины не важен, главное - трафик.
                      у меня на старом движке карточки товара открываются по адресу domain.ru/product123 и domain.ru/shop/product123
                      и они обе в индексе.
                      хотел бы узнать поподробнее, как правильно настроить переадресацию при переезде и как работает плагин перенаправления.
                      • 0
                        Михаил Ушенин Михаил Ушенин Webasyst 14 марта 2014 02:53 #
                        В приложении Сайт настройте 2 поселения магазина для домена, на котором (был) установлен старый магазин:

                        * — Магазин
                        shop/* — Магазин

                        И перенаправьте доменное имя магазина с директории старого магазина в директорию нового магазина (если вы этого ещё не сделали), чтобы по вашему домену открывался новый магазин вместо старого.
                      • 0
                        Еще после переноса с временного поддомена надо проверить информационные страницы магазина. Возможно, придется им роутинг заново указать
                      • 0
                        Иван Иван 25 июня 2014 17:45 #
                        Поставил shop script 5 пишет без лицензии, у меня лицензия от"Shop-Script" подскажите куда ее прописывать. в старой версии было все понятно
                        • 0
                          В Инсталлере откройте страницу с информацией о Shop-Script 5 в разделе "Приложения" и щелкните по кнопке "Установить/Получить лицензию". Вам будет предложено войти в свой Центр заказчика и после авторизации выбрать купленную вами лицензию.
                        • 0
                          Natali Natali 31 июля 2014 10:49 #
                          Вынуждена переходить с WebAsyst Shop-Script на Shop-Script 5. Пока в облако. Инструкция очень нечеткая, помогите разобраться простому пользователю. Проблемы уже на первом шагу с импортом сайта. Я не понимаю, какой адрес писать в URL доступа к данным, мой старый магазин находится на стороннем ресурсе.
                          Потом в инструкции написано про скрипт доступа к данным, закачивать в директорию published/ архив или содержание. И дальше что?
                          Помогите пожалуйста.
                          • 0
                            Михаил Ушенин Михаил Ушенин Webasyst 1 августа 2014 01:52 #
                            Поскольку ваш старый магазин установлен на стороннем хостинге, то при переносе данных нужно выбрать вариант "на удаленном сервере". Соответственно:
                            1. Скачайте архив скрипта export.php и распакуйте его в директорию published/ на сервере, где установлена предыдущая версия интернет-магазина.
                            2. На странице переноса данных в поле "URL доступа к данным" введите URL вашего старого магазина и к нему добавьте published/export.php. Допустим, еслио ваш старый магазин доступен по адресу http://domain.ru/, то в поле "URL доступа к данным" нужно ввести адрес вида http://domain.ru/published/export.php
                            3. В поля "Вход" (логин) и "Пароль" введите логин и пароль главного пользователя, которым первым создавался при установке старого магазина.
                            4. Нажмите "Загрузить".
                            • 0
                              Natali Natali 2 августа 2014 05:59 #
                              Михаил, спасибо, все сделала, но импорт все равно не идет, ругается на логин и пароль, хотя я все правильно ввожу, в ЛК на веб асист я ж могу зайти, а я правильно понимаю, что это те же данные
                              • 0
                                Михаил Ушенин Михаил Ушенин Webasyst 4 августа 2014 02:51 #
                                Возможно, используемый вами логин не соответствует самому первому пользователю, который был создан при установке предыдущей версии WebAsyst. Попробуйте восстановить доступ к админку для этого пользователя (его логин можно посмотреть в Инсталлере в разделе "Настройки → База данных").
                              • +1
                                Михаил Михаил 10 апреля 2017 00:37 #

                                Здравствуйте

                                В SS6 у меня нет пабки /published/, в какую папку мне нужно положить export.php чтобы произвести обмен?

                                • +1
                                  Алексей Алексей Webasyst 10 апреля 2017 10:27 #

                                  Эта инструкция для версий до Shop-script 5. Для обновления вашей достаточно приобрести обновления до 7-й версии(http://7.shop-script.ru/) если еще не приобретали и установить все обновления через Инсталлер.

                                  • +1
                                    Михаил Михаил 10 апреля 2017 15:13 #

                                    Алексей, а есть возможность сначала установить SS7 на временный адрес, а потом приобрести лицензию?

                                    мне сначала бы посмотреть как все будет работать.

                                  • +1
                                    qubiq rubiq qubiq rubiq 20 октября 2014 02:54 #
                                    Друзья
                                    1) Нет ли консольной утилитки для переноса магазина со старой версии на новую? После 18 часов импорта, завис хром, а потом самозакрылся с ошибкой. Теперь не понятно, в каком статусе импорт и вообще что делать. Консольная утилита, которую можно было бы запустить в бэкраунде на линксовом сервере была бы очень нужна для переноса больших проектов.

                                    2) Не перенеслись картинки.Все товары с описаниями и отзывами на месте, но без картинок. Связано ли это с преждевременным закрытием браузера или какие-то неполадки в самой утилите переноса ?
                                    • 0
                                      Михаил Ушенин Михаил Ушенин Webasyst 20 октября 2014 03:04 #
                                      1. Утилиты такой нет.
                                      2. Скорее всего, причина — закрытие браузера.

                                      Попробуйте очистить магазин, в который выполнялся импорт, и повторить операцию — в браузере, которым вы не пользуетесь, например, Firefox, если ваш основной браузер — Chrome.
                                      • 0
                                        qubiq rubiq qubiq rubiq 20 октября 2014 03:15 #
                                        У нас более 100т заказов и более 15т товаров. На достаточно быстром сервере импорт (в пределах одного сервера) займет более суток. Вы понимаете, что нельзя так просто взять и повторить операцию в другом браузере?

                                        Вопрос 3. Нет ли возможности продолжить перенос с того момента, где он был аварийно прерван?
                                        • 0
                                          Михаил Ушенин Михаил Ушенин Webasyst 20 октября 2014 03:49 #
                                          2. Почему?
                                          3. Такой возможности нет.
                                          • 0
                                            qubiq rubiq qubiq rubiq 20 октября 2014 04:01 #
                                            2) потому что день мы уже потеряли, и где гарантия, что не потеряем второй. Проект рабочий, и пока будет идти импорт, на старый сайт прийдут еще заказы (не менее 100+), пойдет рассинхронизация версий и что с этим дальше делать, вообще не понятно

                                            3) Очень жаль. Вообще, было бы круто иметь такую возможность. А так же возможно делать импорт не всего магазина, а только отличий. Например , я импортнул на новый движок весь контент. Потом 2 дня выявляю недочеты и тестирую, оставляя при этом старую версию в качестве рабочей (видной пользователям ). За это время старая версия магазина, естественно, уходит вперед от новой. Хотелось бы после смены движка накатить на новую версию только заказы, пришедшие в эти 2 дня , а не весь контент.
                                            • 0
                                              Михаил Ушенин Михаил Ушенин Webasyst 20 октября 2014 04:09 #
                                              Спасибо, ваши пожелания передал разработчикам плагина.
                                              В текущий условиях имеет смысл разве что повесить объявление о проводящихся технических работах, чтобы информация о заказах и товарах не поменялась за время импорта и постараться выполнить импорт во время минимального посещения магазина покупателями. Не самый удобный выход, но ничего лучше скорее всего прямо сейчас не придумать.
                                            • +1
                                              Михаил Михаил 22 октября 2015 13:07 #

                                              Как переносить товары со старого Shop-Script, что бы у товаров появлялись артикулы по количеству сочетаний вариантов значений характеристик с option_type = 1?

                                              Например, если у товара старого магазина два размера и три цвета, то должно быть шесть артикулов в новом.

                                              Или путь:

                                              выбрать при импорте такие характеристики
                                              "Выбор нескольких возможных вариантов"
                                              и затем сочинять запросы для наполнения таблиц
                                              shop_product_skus и shop_product_features, эмулируя создание артикулов с разными сочетаниями значений характеристик

                                              является оптимальным?

                                              После сборки доработать напильником.

                                            • +1

                                              Пытаюсь перейти с WebAsyst 309 в shopscript 6, вроде все по инструкции.

                                              Начинается процесс переноса данных, останавливается на 46,667% — Импорт покупателей...

                                              Затем выдается ошибка "Неверный URL, логин или пароль".

                                              Логин вроде используется первоначальный (посмотрел в инсталлере).

                                            • +1
                                              dried-up dried-up 23 сентября 2016 13:52 #

                                              Добрый день!

                                              На данный момент установлен Shop-Script 6 пытаюсь купить обновление до 7, но он предлагает купить саму версию.

                                            • +1
                                              Александр Александр 10 октября 2016 23:38 #

                                              Добрый день. Помогите разобраться.

                                              После переноса с домена new.mydomain.ru на mydomain.ru перестала работать оформление заказа, клиенты не могут оформить заказ.
                                              Проблема заключается в том что при оформлении заказа с мобильного устройства, если есть обязательные поля для заполнения в раздели "Контактная информация" то на последнем шаге "Подтверждение" он пишет что "Не заполнены обязательные поля контактной информации. Пожалуйста, вернитесь на шаг ввода контактной информации, чтобы оформить заказ." Хотя все поля заполнены. С персонального компьютера проблема на этом шаге не возникает, однако она возникает на следующем шаге "выбора доставки".

                                              Хотя если все вернуть обратно на домен new.mydomain.ru, то все работает.

                                              В чем может быть причина?



                                            • +3
                                              BestWebPro BestWebPro Партнер-эксперт 25 декабря 2016 18:43 #

                                              Как переносить товары со старого Shop-Script, что бы у них сохранился выбор доп. параметров?

                                              Выставление значений Доп параметры/Характеристика/Выбор нескольких возможных вариантов в плагине выводят доппараметры в товаре списком, выбор из нескольких сделать не получается, настройки менял по разному.

                                              • +2
                                                Михаил Ушенин Михаил Ушенин Webasyst 26 декабря 2016 11:04 #

                                                В вашем старом магазине покупатель выбирает одну из доступных разновидностей товара (каждая из которых может собственную наценку)?

                                                В Shop-Script6/7 эта возможность реализована не доп. характеристиками, а отдельными артикулами либо услугами. Попробуйте импортировать доп. характеристику из старого магазина в новый Shop-Script в виде артикулов либо услуг.

                                                • +3
                                                  BestWebPro BestWebPro Партнер-эксперт 26 декабря 2016 13:52 #

                                                  Это как раз понятно, но как это сделать?

                                                  Что именно нужно выставлять в настройках при импорте? Мои танцы с бубном не привели к желаемому результату

                                                  В последнем варианте хоть появились доп парамерты, но нет возможности выбора, как в оригинале

                                                  Собственно спрашиваю, чтобы не изобретать велосипед и не писать сторонние скрипты-плагины, а решить задачу стандартными методами (если это возможно)

                                                  • +3
                                                    BestWebPro BestWebPro Партнер-эксперт 26 декабря 2016 17:26 #

                                                    Получилось довольно странным способом...

                                                    Сначала сделал плагином "Переход на Shop script". В настройках указал как тут

                                                    А потом взял csv файл и доппараметры, которые должны выбираться из списка, заключил в <> , типа такого

                                                    <{Три,один,Два}>

                                                    Подправленный файл csv накатил поверх, из полей выбрав только наименование и подставив значения доп параметров к уже созданным характеристикам.

                                                    Может есть какой-нибудь другой, нормальный метод?

                                                    • +2
                                                      Марк Марк Партнер-эксперт 24 апреля 2017 14:37 #

                                                      + 1.

                                                      CSV файл править у большого каталога - самоубийство(

                                                    • +2
                                                      Михаил Ушенин Михаил Ушенин Webasyst 24 апреля 2017 15:39 #

                                                      Плагин переноса данных из старого Вебасиста не умеет формировать артикулы из значений характеристик :( Для этого нужен был бы интерфейс, в котором вы могли бы выбирать, из значений каких именно характеристик нужно формировать такие артикулы. Но такого интерфейса при переносе данных нет, а значит, и артикулы из сочетаний значений характеристик не формируются. Поэтому ваш способ выглядит наиболее адекватным из всех, что мне известны. Ещё более адекватным будет реализация того интерфейса выбора характеристик для формирования артикулов, о котором я написал. Но в плагине "Переход на Shop-Script" такой возможности пока нет. Я даже боюсь, что реализовать его будет крайне непросто, потому что для разных товаров может потребоваться формировать артикулы из разных наборов значений разных характеристик.

                                                      • +2

                                                        Тогда, что за опция "Артикул" на против каждой характеристики?

                                                        У меня не удалось заставить её работать.

                                                        • +2

                                                          Это похоже на ошибку. Передали разработчикам для изучения, и исправления, если это всё-таки ошибка.

                                                          • +1

                                                            Это ошибка. Техподдержка это подтверждает. Но как я вижу с исправлением не торопятся.
                                                            Фактически если в старом магазине у товара есть параметр, например вес упаковки с разной ценой для каждой, то это SKU и есть.
                                                            И перенос данных с такого магазина без создания SKU (артикулов) = потере данных. Вместо набора товаров с разным весом и ценой мы получим один товар.

                                                          • +1

                                                            От безысходности этим методом можно воспользоваться.
                                                            Но, у меня к примеру, получаются в результате SKU со стоимостью равной дополнительной стоимости исходного параметра.
                                                            Как сделать SKU со стоимостью равной "стоимость основного товара + стоимость доп. параметра" пока не придумал.

                                                          • +1

                                                            Вынес на всякий случай в отдельное обсуждение https://support.webasyst.ru/22519/plagin-perekhod-...

                                                          • +2
                                                            Марк Марк Партнер-эксперт 24 апреля 2017 14:38 #

                                                            Не получается. Присоединяюсь к вопрому

                                                          • +1
                                                            Valpy Valpy 16 февраля 2017 12:54 #

                                                            Есть работающий магазин на ШС7 и два старых магазина на ШС 3.хх.
                                                            Сейчас требуется перенести старые магазины в эту установку ШС7, каждый в свою витрину.
                                                            Оказалось, что есть проблема. В плагине "Переход на Shop-Script" есть возможность Сохранять ID, при этом импортируются товары со всех магазинов и сохраняются существующие. Также сохраняются все Контакты.
                                                            Но Заказы вновь импортированные "поглощают" старые, если совпадает ID. Соответственно, и Покупателей становится столько же, как и Заказов, так как Покупателем считается только тот Контакт, у которого есть хотя бы 1 Заказ. Получается полный бардак.

                                                            Не подскажете, как решить данную проблему? Думал, может в БД старых магазинов изменить запросом ID всех заказов, например, добавить ко всем префикс типа "5555", но можно напартачить, ведь orderID есть в нескольких таблицах, вдруг я не все учту. И еще номерация в новом магазине у меня потом пойдет "милионная" )

                                                            • +1
                                                              Михаил Ушенин Михаил Ушенин Webasyst 16 февраля 2017 13:01 #

                                                              Это очень нетривиальная задача, которую так наскоком в комментариях к статье вряд ли удастся надёжно решить, не допустив серьёзных ошибок.

                                                              Вам стоит обратиться к опытному квалифицированному разработчику для её решения, поискав его среди наших партнёров, например.

                                                              • +1
                                                                Valpy Valpy 16 февраля 2017 14:53 #

                                                                Да я вот уже в одном старом магазине изменил с помощью запроса к БД, например:
                                                                UPDATE `SC_ordered_carts` SET `orderID` = CONCAT( '300', `orderID`);
                                                                там в трех - четырех таблицах такое надо сделать.

                                                                Сейчас для другого магазина сделаю префикс 200, для третьего 400.
                                                                Затем протестирую на пробной установке.

                                                              • +1
                                                                deBug deBug 29 августа 2017 08:11 #

                                                                после переноса со старого shopscript на новый есть проблема

                                                                покупатели в личном кабинете не видят свои старые заказы. в админке магазина их видно. если в админке создать новый заказ - он появляется в личном кабинете покупателя - старые заказы так и не появляются.

                                                                это баг или фича?

                                                                • +1
                                                                  Михаил Ушенин Михаил Ушенин Webasyst 29 августа 2017 10:36 #

                                                                  Возможно, вы пишете о заказах незарегистрированных покупателей. На странице заказа, который покупатель не видит в своём личном кабинете, у вас в бекенде есть надпись вида "*** покупателей с таким же email"? Если есть, значит, заказы "размазались" по разным контактам-покупателям с одинаковыми email-адресами. Чтобы их увидеть в одном личном кабинете, нужно объединить такие контакты — например, с помощью плагина "Контакты PRO".

                                                                  • +1
                                                                    deBug deBug 29 августа 2017 10:58 #

                                                                    >>Возможно, вы пишете о заказах незарегистрированных покупателей

                                                                    Нет, речь именно про зарегистрированных покупателей.


                                                                    >>На странице заказа, который покупатель не видит в своём личном кабинете, у вас в бекенде есть надпись вида "*** покупателей с таким же email"?

                                                                    нет, такого нет


                                                                    вот так выглядит в бэкэнде

                                                                  • +1
                                                                    deBug deBug 30 августа 2017 10:32 #

                                                                    получается следующим образом, при переносе заказов из старого ShopScript, заказам со статусом "отменен" был назначен статус "удален" в новом ShopScript. А заказы со статусом "удален" видны только в админке, в личном кабинете не видны.


                                                                  • +1
                                                                    deBug deBug 29 августа 2017 11:07 #

                                                                    и еще вопрос, факт того, что 1С идентификатор товар не переносится из старого ShopScript, это тоже фича?

                                                                    Если это так, то тем, у кого обмен ходит через 1С - это плагин не актуален ибо получается так

                                                                    1. Провели загрузку из старого ShopScript

                                                                    2. Настроили новый ShopScript на обмен с 1С

                                                                    3. Провели обмен с 1С и получили дубли всех товаров.


                                                                    поправьте меня, если я ошибаюсь.

                                                                    • +1
                                                                      Михаил Ушенин Михаил Ушенин Webasyst 30 августа 2017 12:12 #

                                                                      В старом Shop-Script 1С-идентификатор есть у товара. А в новом Shop-Script он должен быть и у товара, и у артикула (в старом Shop-Script понятия артикула нет). Во время импорта 1С-идентификатор товара переносится, а для единственного артикула этого товара 1С-идентификатор не создаётся. Видимо, поэтому и возникает несовпадение.

                                                                      Передал замечание разработчикам, чтобы проверили это и исправили. Возможно, позже попробуем здесь в комментариях предложить временное решение, чтобы вы могли перенести данные до выпуска обновления плагина.

                                                                      • +1
                                                                        deBug deBug 30 августа 2017 13:57 #
                                                                        >>А в новом Shop-Script он должен быть и у товара, и у артикула

                                                                        так и есть,

                                                                        Просто при импорте из 1С в облако, 1С GUID артикула создается простым удваиванием 1С GUID товара (т.к. 1С передает только один идентификатор)

                                                                        для примера

                                                                        для товара 1С GUID: 15dea58b-ac8c-11e2-89fa-000c2947cc6e

                                                                        для артикула этого товара 1С GUID: 15dea58b-ac8c-11e2-89fa-000c2947cc6e#15dea58b-ac8c-11e2-89fa-000c2947cc6e

                                                                        странно что не сделали также в плагине переноса.

                                                                      • +1
                                                                        deBug deBug 30 августа 2017 14:00 #

                                                                        >>Во время импорта 1С-идентификатор товара переносится

                                                                        в моем случае не перенесся совсем, по крайней мере именно у товаров он не был заполнен

                                                                      • +1
                                                                        Михаил Ушенин Михаил Ушенин Webasyst 30 августа 2017 15:57 #

                                                                        Попробуйте в файле wa-apps/shop/plugins/migrate/lib/transport/shopMigrateWebasystTransport.class.php найти вот такой фрагмент:

                                                                        if (count($skus) > 1) {
                                                                            $sku_in_stock = floor($in_stock / count($skus));
                                                                            foreach ($skus as $sku_id => & $sku) {
                                                                                if ($product->sku_id != $sku_id) {
                                                                                    $sku['stock'] = array(
                                                                                        0 => $sku_in_stock,
                                                                                    );
                                                                                } else {
                                                                                    $sku['stock'] = array(
                                                                                        0 => ($in_stock - (count($skus) - 1) * $sku_in_stock),
                                                                                    );
                                                                                }
                                                                            }
                                                                            unset($sku);
                                                                        }

                                                                        и дополнить его вот так:

                                                                        if (count($skus) > 1) {
                                                                            $sku_in_stock = floor($in_stock / count($skus));
                                                                            foreach ($skus as $sku_id => & $sku) {
                                                                                if ($product->sku_id != $sku_id) {
                                                                                    $sku['stock'] = array(
                                                                                        0 => $sku_in_stock,
                                                                                    );
                                                                                } else {
                                                                                    $sku['stock'] = array(
                                                                                        0 => ($in_stock - (count($skus) - 1) * $sku_in_stock),
                                                                                    );
                                                                                }
                                                                            }
                                                                            unset($sku);
                                                                        } else {    //изменения начинаются с этой строки
                                                                            if ($product_id_1c = $product->getData('id_1c')) {
                                                                                $single_sku_key = key($skus);
                                                                                $single_sku = reset($skus);
                                                                                $single_sku['id_1c'] = $product_id_1c;
                                                                                $skus = array($single_sku_key => $single_sku);
                                                                            }
                                                                        }

                                                                        После этого повторите перенос данных — 1С-идентификаторы должны подцепиться к артикулам товаров, для которых переносится только по одному артикулу.

                                                                        По несколько артикулов может быть у товаров, для которых артикулы генерируются автоматически из значений характеристик, если вы выбрали такой вариант при переносе данных. Сообщите о результате, пожалуйста.

                                                                        • +1
                                                                          deBug deBug 30 августа 2017 17:06 #

                                                                          >>Попробуйте в файле wa-apps/shop/plugins/migrate/lib/transport/shopMigrateWebasystTransport.class.php найти вот такой фрагмент:

                                                                          это можно сделать в облаке?

                                                                          забыл написать, что я тестирую новый пока в облаке

                                                                          • +1
                                                                            Михаил Ушенин Михаил Ушенин Webasyst 30 августа 2017 17:16 #

                                                                            Попросите службу поддержки сделать такое изменение для вас.

                                                                            • +1
                                                                              deBug deBug 1 сентября 2017 15:18 #

                                                                              попросил, жду ответа )

                                                                            • +1
                                                                              deBug deBug 4 сентября 2017 16:41 #

                                                                              Изменения сделали, повторный импорт из старого магазина произвел.

                                                                              1С идентификатор не перенесся. )))

                                                                              • +1
                                                                                Михаил Ушенин Михаил Ушенин Webasyst 7 сентября 2017 09:16 #

                                                                                Вы перед этой попыткой очищали новый магазин? Он должен быть пуст, когда переносите товары из старого магазина.

                                                                                • +1
                                                                                  Михаил Ушенин Михаил Ушенин Webasyst 7 сентября 2017 09:23 #

                                                                                  И проверьте, чтобы у товаров в старом Вебасисте точно были 1С-идентификаторы на вкладке "Дополнительно".

                                                                                  • +1
                                                                                    deBug deBug 8 сентября 2017 16:35 #

                                                                                    какая-то загадка ))))

                                                                                    в первый раз точно перед импортом делал полный сброс нового магазина. как писал выше - идентификатор не перенесся.

                                                                                    вчера делал повторный импорт, без сброса, просто удалил товары, категории и типы товаров оставил - идентификатор перенесся )))

                                                                                    через некоторые время опять попробую с нуля - отпишусь.

                                                                                    Добавить комментарий

                                                                                    Чтобы добавить комментарий, зарегистрируйтесь или войдите