gpt4 book ai didi

php - 将 Wordpress 类别添加到数据库,更改仅在通过界面更新后显示

转载 作者:行者123 更新时间:2023-11-30 22:07:11 27 4
gpt4 key购买 nike

我正在将 Wordpress 类别注入(inject)我的 MySQL 数据库。对于没有父级的类别,这很好。但是,当我添加子类别时,它不会显示在 Wordpress 类别列表中。

我相信这与 Wordpress 缓存查询或类别树的结果有关。我曾尝试使用此功能强制 Wordpress 清理缓存:

clean_term_cache( $ids, $taxonomy, $clean_taxonomy );

在这里找到:https://codex.wordpress.org/Function_Reference/clean_term_cache

不幸的是,在我编辑并保存其中一个可见类别后,它仍然只显示我的更改。

所以要清楚:我在数据库中所做的工作。我将记录添加到正确的表中。唯一的问题是 Wordpress 管理界面不显示更改。直到我使用所述界面编辑/保存在管理界面中可见的类别。

此外:我使用直接数据库注入(inject),因为我使用的是 WooCommerce + WPML。 API 不支持创建多语言类别。

最佳答案

我遇到的问题是因为我试图递归地添加类别并翻译它们。我不得不用一种翻译将一个类别添加到数据库中,然后再添加其他翻译。但每当我运行清除缓存的功能时,WPML 也会开始工作。这搞砸了整个翻译。

我最终自己创建了一个类别,并在运行完所有代码后立即将其删除。这似乎奏效了。

分享这个伤害了我程序员的心,但这就是我解决问题的方法。所以这里是:

$temp_term = wp_insert_term('Fake category', 'product_cat', ['description' => 'Temporary category', 'slug' => 'fake-cat-temp']);
wp_delete_term($temp_term['term_id'], 'product_cat');

关于php - 将 Wordpress 类别添加到数据库,更改仅在通过界面更新后显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41246083/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com