Автоматическое заполнение артикула товара в Virtuemart

Все, кто работает с Виртумартом знают, что артикул у товара должен быть уникальным. Отсюда есть некоторые сложности с работой с товарами, ведь со временем забываются номера артикулов. Хорошо, если у вас в магазине немного товаров. А если ваша торговая площадка предлагает с тысячами товарных единиц. Конечно, немудрено и запутаться во всем этом добре. Лучше попробуем настроить Virtuemart таким образом, чтобы система сама подставляла нужные значения артикулов. Почему бы и нет? Для этого в файле: administrator\components\com_virtuemart\classes\ps_product.php

Фильтры для воды корейские. Купить товары раздела фильтры для воды. Бытовые фильтры для воды.

Нужно заменить код:

1
2
3
4
if (empty( $d["product_sku"])) {
$vmLogger->err( $VM_LANG->_('VM_PRODUCT_MISSING_SKU',false) );
$valid = false;
}

На такой:

1
2
3
4
5
6
7
8
if (empty( $d["product_sku"])) {
$q = "SELECT MAX(product_id) AS product_id FROM j25_{vm}_product";
$db->query( $q );
$db->next_record();
$list_sku = intval($db->f("product_id"))+1;
$d['product_sku'] = $list_sku;
$valid = true;
}

И всё будет работать, как ночные звезды !