Для того, чтобы в качестве URL при формировании использовался ID товара (вместо названия) следует сделать следующее:
Перейти в корень сайта на OctoberCMS
Выполнить в консоли команду php artisan create:plugin Dettroxx.ShopaholicExtends, при этом вместо названия Dettroxx.ShopaholicExtends можете использовать любое
Выполнить в консоли команду php artisan october:up для того, чтобы установить плагин
Перейти в папку своего плагина (найдите в корне сайта папку plugins и в ней свой плагин (к примеру название Dettroxx.ShopaholicExtends преобразуется в путь dettroxx/shopaholicextend
Откройте файл Plugin.php
Далее, можем удалить все лишнее и оставить код как у меня в примере:
Затем добавляем необходимый код и получаем нужный нам функционал
P.S.
Не обазятельно для этой фичи создавать отдельный плагин, если у вас есть уже существующее решение, в котором вы производите кастомизацию сайта - просто добавьте код из метода boot() и подключите недостающие классы с помощью use в начале файла:
use Event;
use Lovata\Shopaholic\Models\Product;
Внимание!
Для того, чтобы сделать аналогичный функционал для категорий товаров - воспользуйтесь подключением класса
use Lovata\Shopaholic\Models\Category;
и соответственно замените/продублируйте код в методе boot()
Дополнение 1:
можно использовать Артикул товара в качестве поля по которому генерируется URL по - умолчанию, для этого воспользуйтесь вот таким кодом в методе boot
Дополнение 2:
Если вам нужно принудительное изменение URL (всегда, а не только в первый раз) то воспользуйтесь примером для генерации поля на основе aртикула (аналогично можно переделать под другие поля):