Номер заказа не отображается на страниэто успешного оформления и во второй и в третьей версии. Опенкарт - система полная чудачеств и странного пользовательского удобства. Поэтому 70% расширений исправляют эти чудачества, ничего не добавляя и не улучшая.
Вот этот кусок кода проверяет суещёствует ли в сессии номер заказа, и если да - олищается корзина и удаляются все данные о заказе, хранящиеся в сессии.
if (isset($this->session->data['order_id'])) {
$this->cart->clear();
unset($this->session->data['shipping_method']);
unset($this->session->data['shipping_methods']);
unset($this->session->data['payment_method']);
unset($this->session->data['payment_methods']);
unset($this->session->data['guest']);
unset($this->session->data['comment']);
unset($this->session->data['order_id']);
unset($this->session->data['coupon']);
unset($this->session->data['reward']);
unset($this->session->data['voucher']);
unset($this->session->data['vouchers']);
unset($this->session->data['totals']);
}
Даже удалять записи в сессии могут модули оплаты.
Поэтому, нужно сохранить данные о номере заказа перед их уднонием, например
if ( isset($this->session->data['order_id']) ) {
$this->session->data['last_order_id'] = $this->session->data['order_id'];
}
А потом добавить в выходные данные
if (! empty($this->session->data['last_order_id']) ) {
$this->document->setTitle(sprintf($this->language->get('heading_title_customer'), $this->session->data['last_order_id']));
} else {
$this->document->setTitle($this->language->get('heading_title'));
}
Добавить в языковые переменные catalog/language/english/checkout/success.php
$_['heading_title_customer'] = 'Your Order #%s has been placed!';
Как-то ик.