Opencart 3.x:更改adm中的手动发票以添加禁用的产品

问题描述

您好,我需要在admin中自定义我的opencart手动发票。 id喜欢添加已禁用的产品并启用了我的发票。但是只有管理员才能做到这一点。

我试图更改此文件

system/library/cart/cart.PHP and in line 41

我将第41行的查询替换为

if (isset($this->session->data['api_id'])) {
$product_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_store p2s LEFT JOIN " . DB_PREFIX . "product p ON (p2s.product_id = p.product_id) LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) WHERE p2s.store_id = '" . (int)$this->config->get('config_store_id') . "' AND p2s.product_id = '" . (int)$cart['product_id'] . "' AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "'");
} else {
$product_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_to_store p2s LEFT JOIN " . DB_PREFIX . "product p ON (p2s.product_id = p.product_id) LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) WHERE p2s.store_id = '" . (int)$this->config->get('config_store_id') . "' AND p2s.product_id = '" . (int)$cart['product_id'] . "' AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p.date_available <= Now() AND p.status = '1'");
}

但是它一直在阻止我在管理员手动发票购物车上添加禁用的产品。

解决方法

要检查管理员是否已登录使用条件

if (isset($this->session->data['user_id']) && !empty($this->session- >data['user_token'])) {
// admin sql 
}else{
// stock sql
}