Как сделать, чтоб СДЭК получал заказы с приемлемыми кодами товара

Иногда хочется добавить в код товара какие-то символы, которые не принимает СДЭК.

Например, у нас используются коды типа 4677•T-TWILL-71/15|48-50_182-188

Можно спросить — зачем такие сложности? Ответ прост — нам так удобно, в коде товара видно сразу все, что нужно — и модель, и цвета, и ткань, и размер с ростом. Увы, поставить везде дефисы неудобно, потом синхронизацию хорошо сделать не получается, есть одинарные и двойные размеры и роста.

Проблема в том, что cs-cart такие символы вполне допускает, а СДЭК их не понимает и не даёт оформить заказ.

Каким я представляю решение проблемы:

Добавил в функцию fn_sdek_get_data_product_xml всего одно изменение:

было

'WareKey' => $product['ware_key'],

стало

'WareKey' => preg_replace(array('/\•/','/\|/'),array('-'),$product['ware_key']),
3 лайка