📅  最后修改于: 2023-12-03 15:35:43.091000             🧑  作者: Mango
如果你需要在 WooCommerce 上批量添加产品,手动添加会非常繁琐,这时以编程方式导入产品就是一个更好的选择。本文将介绍如何通过编程方式导入产品到 WooCommerce 中。
在使用编程方式导入产品之前,我们需要先在 WooCommerce 后台手动添加一个产品,以便后面可以查看产品数据并进一步了解如何编程导入产品。
在导入产品之前,我们需要了解需要导入的产品数据格式。在 WooCommerce 中,每个产品都有一个 ID,同时还有其他可选字段,如名称、价格、描述、类别、标签、图片等等。我们可以使用 WooCommerce 的 Rest API 来查看产品数据。
下面是使用 Rest API 获取产品数据的代码段,我们可以在浏览器中访问该 URL 获取数据:
GET /wp-json/wc/v3/products/1
Authorization: Basic base64_encode(username:password)
其中 "1"
表示需要获取的产品 ID,"Authorization: Basic"
是 Rest API 的认证名称和密码(用 base64 编码过的)。
返回结果如下:
{
"id": 1,
"name": "Woo Product",
"slug": "woo-product",
"permalink": "https://yourstore.com/product/woo-product/",
"date_created": "2022-01-01T00:00:00",
"date_created_gmt": "2022-01-01T00:00:00",
"date_modified": "2022-01-01T00:00:00",
"date_modified_gmt": "2022-01-01T00:00:00",
"type": "simple",
"status": "publish",
"featured": false,
"catalog_visibility": "visible",
"description": "This is a Woo product",
"short_description": "A short description for Woo product",
"sku": "",
"price": "100",
"regular_price": "100",
"sale_price": "",
"date_on_sale_from": null,
"date_on_sale_from_gmt": null,
"date_on_sale_to": null,
"date_on_sale_to_gmt": null,
"price_html": "<span class=\"woocommerce-Price-amount amount\"><span class=\"woocommerce-Price-currencySymbol\">$</span>100.00</span>",
"on_sale": false,
"purchasable": true,
"total_sales": 0,
"virtual": false,
"downloadable": false,
"downloads": [],
"download_limit": null,
"download_expiry": null,
"external_url": "",
"button_text": "",
"tax_status": "taxable",
"tax_class": "",
"manage_stock": false,
"stock_quantity": null,
"in_stock": true,
"backorders": "no",
"backorders_allowed": false,
"backordered": false,
"sold_individually": false,
"weight": "",
"dimensions": {
"length": "",
"width": "",
"height": ""
},
"shipping_required": true,
"shipping_taxable": true,
"shipping_class": "",
"shipping_class_id": 0,
"reviews_allowed": true,
"average_rating": "0.00",
"rating_count": 0,
"related_ids": [],
"upsell_ids": [],
"cross_sell_ids": [],
"parent_id": 0,
"purchase_note": "",
"categories": [
{
"id": 9,
"name": "Uncategorized",
"slug": "uncategorized"
}
],
"tags": []
}
在了解了产品数据之后,我们就可以开始编写代码批量导入产品了。在这个例子中,我们将使用 Python 和 Requests 库来实现批量导入。
下面是一个简单的 Python 程序示例,用于将 data.csv
文件中的产品信息导入到 WooCommerce 中:
import requests
# WooCommerce API credentials
url = "https://yourstore.com/wp-json/wc/v3/products"
username = "API_username"
password = "API_password"
# Read CSV file
with open("data.csv") as f:
lines = f.readlines()
for line in lines:
# Split data
data = line.split(",")
# Prepare data
product_data = {
"name": data[0],
"regular_price": data[1],
"short_description" : data[2],
"description" : data[3],
"categories": [{"name": data[4]}],
"images": [{"src": data[5]}]
}
# Send request
response = requests.post(url, auth=(username, password), json=product_data)
# Print response
print(response.json())
其中 data.csv
文件中数组包含每个商品的名称、价格、简短描述、完整描述、类别和图片等信息,程序将读取文件并将数据转换成 JSON 格式后发送 POST 请求到 WooCommerce Rest API。
使用编程方式导入产品可以帮助我们快速地添加大量产品,并且可以通过 Rest API 获取和导入产品数据。在本文中,我们介绍了如何获取产品数据,并用 Python 程序演示了如何批量导入产品。希望本文能对你有所帮助!