With the popularity of WeChat mini programs, more and more online stores have chosen to move their stores to WeChat mini programs for sales.
In WeChat mini programs, product classification is a very important part, which can have a great impact on the user's experience of using the mini program. Therefore, this article will introduce in detail how to use PHP to implement the product classification function in WeChat mini programs.
1. Demand analysis
In the WeChat mini program, product classification mainly has the following requirements:
1. Display the product classification list
2 .Be able to click on the category list and switch to the corresponding product list
3. Be able to query based on the category name or category ID and transfer data through the interface
2. Design ideas
In response to the above requirements, we need to design the following interfaces:
Interface 1: Get the product category list
Interface URL: http://www.xxx.com/api/v1/goods_category/ list
Request method: GET
Return data format:
{ "data":[ { "id": 10, "name": "Fruit" },{ "id": 20, "name": "Vegetables" } ] }
Interface 2: Get the product list based on the category ID
Interface URL: http://www.xxx.com/ api/v1/goods/list_by_category_id
Request data format:
{ "cat_id":"20" }
Request method: POST
Return data Format:
{ "data":[ { "id": 1, "name": "green vegetables", "price": 3.2 }, { "id": 2, "name": "tomatoes" , "price": 2.8 }] }
Interface three: Get the product list based on the category name
Interface URL: http://www.xxx.com/api/v1/goods/list_by_category_name
Request data format:
{ "cat_name":"vegetable" }
Request method: POST
Return data format:
{ "data":[ { "id": 1, "name": "green vegetables", "price": 3.2 }, { "id": 2, "name": "tomatoes", "price": 2.8 } ] }
3. PHP code implementation
* Get the product Category list interface*/ public function list() { $categoryList = CategoryModel::all([], 'img'); return json($categoryList); }
* Get product list interface based on category ID*/ public function listByCategoryId() { $cat_id = input('post.cat_id/d') ; //Category ID $goodsList = GoodsModel::all(['cat_id' => $cat_id], 'img'); return json($goodsList); }
* Get product list interface based on category name*/ public function listByCategoryName() { $post_data = input('post.'); //Category name $category = CategoryModel::get(['name' => $post_data['cat_name']]); $goodsList = GoodsModel::all(['cat_id' => $category['id' ]], 'img'); return json($goodsList); }
4. Mini program code implementation
Add the following code to index.wxml:
Add the following code to index.js:
switchCategory: function(e){ var id = e.currentTarget.dataset.catid this.setData({ curIndex: id }) this.getGoodsList() },
Add the following code in index.js:
getGoodsList(){ var that = this wx.request({ url: app.globalData.host '/api/v1/goods/list_by_category_id', method:'POST', data: { cat_id: that.data.curIndex }, success:function(res){ if(res.data.data.length > 0){ that.setData({ goodsList: res.data.data, }) } else{ wx.showToast({ title: 'No data', icon:'none' }) that.setData({ goodsList: [], }) } } }) }
Add the following code in goods.wxml:
5. Summary
So far, we have implemented the WeChat applet product classification function. Of course, the above code is just an example, and various exception handling and security protections need to be added in actual production.
However, I believe that many beginners of small programs can easily implement the product classification function with the help of this article. At the same time, we also remind everyone to pay attention to the official documents of the WeChat Mini Program in a timely manner and adapt according to the upgrade of the WeChat Mini Program.
The above is the detailed content of How to use PHP to implement product classification in WeChat mini programs. For more information, please follow other related articles on the PHP Chinese website!