通过SQL设置产品可见性(WordPress + WooCommerce)

时间:2017-10-23 13:44:56

标签: php mysql sql wordpress woocommerce

以下问题可以视为通过SQL查询[1]向帖子添加类别的特殊情况,但是也非常欢迎与该一般情况相关的答案:

假设我们有10.000种产品,并希望将其产品可见性设置为“隐藏”(就好像在每次产品上完成10.000次,在WP-admin中)。如何安全地使用(哪个)SQL查询?

基于[1]中的答案和一些数据库观察[2],我有一些建议似乎可以工作(在实践中,到目前为止),但是还有其他的东西(侧面 - 效果)需要补偿(与在WP-admin中完成所有操作)?在通过WP-admin将一个产品设置为“隐藏”之前和之后区分数据库转储显示,除了“product_visibility”相关内容之外,还有一些不同之处,例如wp_options中的瞬态/缓存选项(不是问题,这些都是不同步的,但还有其他一些东西,如与cron相关的记录。一般来说,可能会有很多,取决于使用的插件等。因此,是否有任何需要补偿的默认/常见事项 - 或者在没有任何额外注意的情况下执行以下SQL查询是安全的(以及为什么)?

在将所有产品重置为“完全”可见性之后,SQL执行了[2] - 我对可能的补偿问题提出质疑,而不是在WP-admin中完成所有这些:

A)用“

”设置“从搜索中排除”
INSERT INTO wp_term_relationships (object_id, term_taxonomy_id) 
SELECT ID, '472512' FROM wp_posts WHERE post_type='product'

UPDATE wp_term_taxonomy 
SET count = '10000' 
WHERE term_taxonomy_id = '472512'

然后B)用“

”设置“从目录中排除”
INSERT INTO wp_term_relationships (object_id, term_taxonomy_id) 
SELECT ID, '472513' FROM wp_posts WHERE post_type='product'

UPDATE wp_term_taxonomy 
SET count = '10000' 
WHERE term_taxonomy_id = '472513'

非常感谢您的任何反馈/想法!

来源:

[1]:How to add category to all post by using sql query?

[2]:术语信息(' 472512'〜"排除搜索",' 472513'〜"排除 - 来 - 目录)来自查询:

SELECT * FROM wp_terms 
WHERE term_id IN (
    SELECT term_id FROM wp_term_taxonomy 
    WHERE taxonomy = "product_visibility"
)

[我也在https://wordpress.org/support/topic/setting-product-visibility-via-sql/]

上发布了此内容

0 个答案:

没有答案