Typické číslování objednávek v Prestashop řešení je poněkud nepřehledné XNFDFVBG. My si v tomto tutoriálu ukážeme jak na číselné 20260010 zobrazení ideálně devítimístné pro ideální použití například jako pro variabilní symbol.

Používám k číslovaní objednávek raději čísla. Číslovaní objednávek je po malé úpravě čisté a přehledné.

Takového tvaru čísla objednávky docílíte velmi jednoduše upravením původního kódu.
1. Otevřete si FTP databázi. Ve složce /classes/order si stáhnete soubor Order.php

2. Po stažení, soubor Order.php otevřete v programu NotePad nebo PSPad
Tento kód vyměníte:
public static function generateReference() { return strtoupper(Tools::passwdGen(9, 'NO_NUMERIC')); }
Za tento nový kód:
public static function generateReference() { $query = new DbQuery(); $query->select('MAX(id_order) as max'); $query->from('orders'); $query->where('id_cart' > 0); $order = Db::getInstance()->getRow($query); $reference = $order['max'] +10 ; return sprintf('2026%05d', $reference); }
2. Soubor uložte a nahrajte zpátky do FTP databáze.
A máte hotovo. Příští objednávka bude již číselná.
Můžete ještě upravit řádek „return sprintf(‚2026%05d‘, $reference);“ 2023 označuje prefix před číslem objednávky.%05d označuje počet znaků za prefixem v tomto případě je to 5 znaků. Doporučuji ponechat 5 znaků, jelikož číslo objednávky může být také číslo variabilního symbolu. Banky mají omezený počet pro variabilní symbol maximálně 9 znaků proto se jedná o součet 4+5 = 9 znaků.
V případě že nebude chtít, manuálně upravovat generovaní tohoto čísla doporučuji modul Změna kódu objednávky – change reference code od mého oblíbeného vývojáře Prestashop modulů.
