Задача: изменить номер заказа при оформлении покупки в магазине на CMS Мадженто на более короткий, например, пятизначный и содержащий буквы.
Теория:
Данные по заказам хранятся в базе данных Мадженто в следующих таблицах:
eav_entity_store eav_entity_type
В таблице eav_entity_store есть два столбца (опции):
increment_prefix – автоматический префикс прироста (первые значки, цифры) при формировании номера заказа
increment_last_id – последние зафиксированные заказы (их полные номера – id) в системе
В таблице eav_entity_type настраивается формат номера заказов/доставок/инвойсов/возвратов и т.д.
В этой таблице нас интересуют строки order, invoice, shipment (их значения в столбце entity_type_id) и столбец increment_pad_length.
Значения в столбце increment_pad_length определяют количество цифр в номере заказа (без учета префикса). По умолчанию это 8.
Исходные данные: нам нужно, чтобы следующий номер заказа (доставки, инвойса) начинался с аббревиатуры нашей компании (SW), стартовал с 25 и содержал всего пять цифр. Например, должен получиться номер SW25005.
Решение:
1) для начала нужно узнать используемые в таблице eav_entity_type значения entity_type_id (код операции). В нашем примере это:
2) нужно узнать используемые в таблице eav_entity_store значения для store_id (код магазина):
3) обновляем поле increment_prefix в таблице eav_entity_store:
c 8 на SW25 для записей с store_id 8 в полях entity_type_id со значеним 11 (это для номера заказа) и значением 19 (это для номера доставки)
4) изменяем поле increment_last_id в этой же таблице на последний требуемый номер:
5) изменяем для тех же ID операций в таблице eav_entity_type в поле increment_pad_length на 3 (длина номера заказа без префикса).
Финальный результат: следующий заказ в магазине будет иметь номер SW25006.
WordPress годами был непревзойденным "монолитом": он отвечал и за удобную админ-панель, и за хранение данных,…
В мире веб-серверов часто говорят о противостоянии Nginx vs Apache. Но что, если бы я…
Когда я начинал свой путь в веб-разработке, вопрос "какой веб-сервер использовать?" практически не стоял. Ответ…
Когда речь заходит о веб-серверах, два имени всегда на слуху: Apache и Nginx. Apache —…
В мире веб-разработки мы постоянно сталкиваемся с проблемой: "А у меня на компьютере все работает!".…
На заре моей карьеры веб-разработчика все было относительно просто: установил локальный сервер (помните Denwer?), положил…