簡體   English   中英

如何以編程方式將產品添加到Opencart數據庫

[英]How to programmatically add product to Opencart database

  • 我想知道是否有一個特殊的opencart函數在前端頁面上使用php / html表單以編程方式添加/編輯產品到Opencart數據庫(例如wordpress“wp_insert_post”函數)或者我必須用PHP編寫所有代碼(插入進DB_TABLE .....)

  • 還有哪些opencart數據庫表我必須使用它來添加帶有圖像的簡單產品信息,它只是產品和product_description表,當然我需要在使用前端頁面添加產品后也出現在管理頁面中

我真的需要一些參考資料來告訴我這樣做的方法

(我使用的是opencart 1.5.1.3)

你只需要創造價值相聯系的數組傳遞給addProduct()的方法/admin/model/catalog/product.php 要在控制器中加載模型,請使用

// Assoc array of data
$productData = array(
    'name' => 'Product Name Here',
    'model' => 'ABC123',
    ...
);

// Load model into memory if it isn't already
$this->load->model('catalog/product');

// Attempt to pass the assoc array to the add Product method
$this->model_catalog_product->addProduct($productData);

這正是OpenCart在管理區域中所做的,只是它使用表單中的POSTed值作為數組傳遞

請注意,某些值(如描述,圖像等)是數據數組本身內的數組,因此需要進行編碼。 如果你想看看是什么機型從產品接收添加表單,打開模型PHP文件,找到addProduct()方法和print_r$data在方法的開始,這將給你的完整列表變量數組鍵,其中大部分都不是必需的。 請參閱管理員中的表單。 很容易找出哪個字段與數組中的哪個鍵相關

有關在OpenCart中作為開發人員入門的更多信息

到過那里。

最重要的是,不僅要將產品數據添加到表PREFIX_product ,還要在PREFIX_product_to_category中鏈接到類別。

但是也要在PREFIX_product_description中創建行( 使用相同的product_id )。 沒有它產品顯示在管理區域,但不能編輯,鏈接將與空product_id編號,如“admin / index.php?route = catalog / product / edit&product_id =”。

在我的情況下包括和使用OC核心模型或清除緩存是不必要的。 通過MySQL查詢添加的產品變得可編輯且功能齊全。

OC版本2.2.0.0

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM