1
A
回答
0
更新:
不是簡單...,但我得到它。見下圖:
1)獲取數據,並計算:
這裏是有點複雜的SQL查詢的自定義功能,可用於獲取每個產品類別的所有相關產品的庫存數量。然後在foreach循環中,按產品類別添加庫存數量,以獲得按類別的總庫存評估。
/**
* Get the Total Stock Valuation by Category.
*
* @param integer $category_id (optional)
* @return an array with the category ID (int) as key and total stock quantity (int) as value
*/
function get_product_cats_stock_qty($category_id = 0){
global $wpdb;
// The DB tables involved
$term_tax = $wpdb->prefix . "term_taxonomy";
$term_rel = $wpdb->prefix . "term_relationships";
$postmeta = $wpdb->prefix . "postmeta";
if(0 != $category_id)
{ // get one defined category
$one_category_only = "AND $term_tax.term_id LIKE $category_id";
} else
{ // get all categories
$one_category_only = '';
}
// Query all detailed categories and related product stock quantity
$results_obj = $wpdb->get_results("
SELECT $term_rel.term_taxonomy_id as cat_id,
$term_rel.object_id as prod_id, $postmeta.meta_value as stock_qty
FROM $term_rel, $postmeta, $term_tax
WHERE $term_rel.object_id = $postmeta.post_id
AND $term_rel.term_taxonomy_id = $term_tax.term_id
$one_category_only
AND $term_tax.taxonomy LIKE 'product_cat'
AND $term_tax.count > 0
AND $postmeta.meta_key LIKE '_stock'
AND $postmeta.meta_value != ''
ORDER BY $term_rel.term_taxonomy_id ASC
");
// Iterating though each categories/products relationships stock quantity
foreach($results_obj as $result){
// Initialising each different category stock
if(empty($stock_qty_by_cat_id[ $result->cat_id ]))
$stock_qty_by_cat_id[ $result->cat_id ] = 0;
// category stock quantity calculation
$stock_qty_by_cat_id[ $result->cat_id ] += intval($result->stock_qty);
}
return $stock_qty_by_cat_id
}
代碼放在您的活動子主題(或主題)的function.php文件或也以任何插件文件。
2)ADMIN報告股票部分自定義標籤:
下面是將添加一個自定義選項卡與相應的自定義內容的功能:您將獲得的所有產品類別的清單,併爲他們每個人所有相關產品庫存數量總和。
// Add a Custom tab to admin repport stock section
add_filter('woocommerce_admin_reports', 'add_my_custom_stock_admin_report', 10, 1);
function add_my_custom_stock_admin_report($reports){
$reports["stock"]["reports"]["category_stock_valuation"] = array(
'title' => __('Category Stock Valuation', 'woocommerce'),
'description' => '',
'hide_title' => true,
'callback' => 'content_custom_stock_admin_report',
);
return $reports;
}
// The content for the Custom tab to admin repport stock section
function content_custom_stock_admin_report(){
?>
<div id="poststuff" class="woocommerce-reports-wide">
<table class="wp-list-table widefat fixed striped stock">
<thead>
<tr>
<th scope="col" id="cat_id" class="manage-column column-category-id column-primary"><?php _e('Term ID','woocommerce'); ?></th>
<th scope="col" id="cat_name" class="manage-column column-category-name"><?php _e('Category Name','woocommerce'); ?></th>
<th scope="col" id="stock_level" class="manage-column column-stock_level"><?php _e('Stock count','woocommerce'); ?></th>
</tr>
</thead>
<tbody id="the-list" data-wp-lists="list:stock">
<?php
foreach(get_product_cats_stock_qty() as $cat_id => $cats_stock_qty ):
$cat_name = $cats_stock_qty['cat_name']; // category name
$stock_qty = $cats_stock_qty['stock_qty']; // Stock quantity
?>
<tr>
<td class="category-id column-category-id column-primary" data-colname="Product"><?php echo $cat_id; ?></td>
<td class="category-name column-category-name" data-colname="Parent"><?php echo $cat_name; ?></td>
<td class="stock_level column-stock_level" data-colname="Units in stock"><?php echo $stock_qty; ?></td>
</tr>
<?php endforeach; ?>
</tbody>
<tfoot>
<tr>
<th scope="col" id="cat_id" class="manage-column column-category-id column-primary"><?php _e('Term ID','woocommerce'); ?></th>
<th scope="col" id="cat_name" class="manage-column column-category-name"><?php _e('Category Name','woocommerce'); ?></th>
<th scope="col" id="stock_level" class="manage-column column-stock_level"><?php _e('Stock count','woocommerce'); ?></th>
</tr>
</tfoot>
</table>
</div>
<?php
}
代碼放在您的活動子主題(或主題)的function.php文件或也以任何插件文件。
此代碼在WooCommerce 3+上測試並正常工作。
相關問題
- 1. 評估產品
- 2. 如何刪除鏈接並顯示woocoomerce中的類別文本產品頁面
- 3. 按照產品類別在WooCommerce的簡碼中獲取產品
- 4. Magento按類別顯示產品
- 5. 按類別顯示產品ID php&mysql
- 6. 顯示產品類別
- 7. WordPress WooCommerce在每個產品按鈕上顯示產品類別
- 8. 顯示大商業中的類別的總產品數量
- 9. 試圖按照產品類別將標籤與產品關聯
- 10. WordPress的WooCommerce顯示個別產品的嵌套產品類別
- 11. Opencart顯示兒童類別列表中的總產品數量
- 12. 顯示庫存和缺貨產品類別Magento
- 13. 想要顯示產品的平均評分和總評價
- 14. 僅在產品視圖中顯示當前類別的產品
- 15. Magento:缺貨中顯示產品類別頁最後的產品
- 16. 如何在Magento的CMS頁面中按類別顯示產品?
- 17. 類別x的產品不被顯示
- 18. 顯示相似類別的產品RoR
- 19. Magento - 顯示產品的類別
- 20. Magento的產品按類別
- 21. 按類別查詢數據庫產品
- 22. magento按產品總數顯示導航產品
- 23. 如何在Magento的產品列表中顯示評分總結?
- 24. 顯示產品總數
- 25. Magento類別頁面不顯示產品
- 26. 顯示多個產品類別woocommerce
- 27. 產品未顯示在Magento2子類別
- 28. 顯示屬性圖像類別產品
- 29. 僅顯示WooCommerce主要產品類別
- 30. 相關產品只按類別顯示,而不顯示WooCommerce中的標籤3
我已更新我的答案,功能和測試解決方案...這並不容易 – LoicTheAztec