php - Woocommerce 中某些产品的批量更新费用

标签 php mysql wordpress woocommerce

我正在尝试批量更新商店中某些商品的成本。我发现 this thread 其中用户说以下代码可以批量更新价格:

UPDATE wp_postmeta m 
    JOIN wp_posts p ON m.post_id=p.id 
    AND m.meta_key = '_price' 
    AND p.post_type = 'product'
SET m.meta_value = <price>

我假设如果我将 _price 更改为 _cost 它就会起作用。这是正确的术语吗?或者有人知道我如何找到它吗?

更重要的是,我可以通过类别或标签来定位某些产品吗?如果是这样,怎么办?

最佳答案

woocommerce 中没有类似 _cost 的术语

WooCommerce 使用 3 个术语在数据库中存储数据:

1) _regular_price :顾名思义,是产品的正常价格。

2) _sale_price :顾名思义,如果产品正在促销,则为促销价,如果产品未促销,则将使用_regular_price

3) _price :产品将根据_price出售。因此,假设您的产品具有 _regular_price 22 $_sale_price 18 $ 那么产品将会出售18 美元。所以基本上你可以说_price是由regular_price_sale_price两者决定的。

因此,根据我的知识和经验,不存在_cost术语。

<小时/>

是的您可以定位特定类别,但需要深入数据库。

第一步:转到您的数据库并找到wp_terms表(wp是前缀,在您的情况下可能会有所不同)。

第 2 步:查找您类别的 term_id

分配给 wp_term_relationships 中产品的所有类别。

因此,您可以编写查询并设置条件,例如 id(wp_post table) = object_id(wp_term_relationships table)

注意:数据库中的对象 ID 和帖子 ID 相同。

关于php - Woocommerce 中某些产品的批量更新费用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28034403/

相关文章:

php - Ajax 调用返回错误,状态为 200,状态文本 OK

php - MYSQL溢出函数

MySQL,让CASE()只返回一个结果,匹配的那个

mysql - 如何处理关系数据库中的金融交易?

mysql - 如何从 WordPress 的 UserMeta 表中删除特定的 meta_key 字段及其值?

php - 将变量保存为MYSQL中的变量以备后用

php update ,更新一些值双倍

Android , Dialog Fragment 与 Mysql 数据库使用 Volley

php - wordpress 博客信息 ('template_directory' );使用 Twig 解析为字符串

WordPress 插件翻译 - load_plugin_textdomain