我正在通过代码动态添加产品类别,一切都很好(从 xml 文件导入产品),但由于某种原因,当我获得 46 个产品类别时,我无法再自动添加,我找不到发生这种情况的任何原因。
第 47 个类别被添加到数据库中,并且像所有其他类别一样具有所有需要的信息。它只是没有出现在产品类别中,因此也没有出现在网站的菜单中。令人困惑的事情是:
- 它出现在"外观>菜单"列表中,与他的父母关系正确
- 产品类别说它列出了 47 个项目,但我只能数 46 个
- 仅当我删除所有类别时才会出现第 47 个
- 显示产品类别的查询正确
这是怎么回事?任何人都可以给我一些关于我应该在哪里搜索以解决此问题的线索吗?
提前谢谢。
最后我发现了问题。
首先,问题与最大类别数量或任何类型的类别限制无关。这是一个缓存错误。
在我的特定情况下,我一次添加了 46 个术语,并且插件创建了一个缓存,其中包含我的分类中的所有子项。后来当我尝试添加第 47 个术语时,它实际上是正确添加的,但由于某种原因缓存从未更新,这是所有麻烦的原因。
解决方案:通过删除 {$taxonomu}_children 选项来清除该缓存。
delete_option("{$taxonomy}_children");
更多关于这个:
在分层分类中插入术语