Never worked with PHP before, but I looked into the architecture and this isn't hard to do.
Not taking any responsibility and just giving the basics.
in admin/model/sale/order.php find
Code: Select all
public function getOrderProducts($order_id) {
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_product WHERE order_id = '" . (int)$order_id . "'");
return $query->rows;
}
You need to edit that query with a JOIN to get the SKU from another table.
Then you have to add the sku to the product array
in admin/controller/sale/order.php find
Code: Select all
$product_data[] = array(
'name' => $product['name'],
'model' => $product['model'],
'option' => $option_data,
'quantity' => $product['quantity'],
'price' => $this->currency->format($product['price'], $order_info['currency_code'], $order_info['currency_value']),
'total' => $this->currency->format($product['total'], $order_info['currency_code'], $order_info['currency_value'])
);
There you insert
Also in the invoice() function on same page you have to insert something like
$this->data['column_sku''] = $this->language->get('sku'); or just
$this->data['column_sku'] = 'SKU'; if you dont want to edit the language files, this is for the column header
Now you can use the variables $column_sku and $product['sku'] in your template
Please have in mind I am not a PHP developer but this is how I would TRY it

, back-ups are advised.