0

我有一个非常奇怪的问题。

我在 wordpress 中使用 wp_insert_category() 来创建一个类别并检索新的 id。然后我调用另一个 wp_insert_category 并将此 id 作为category_parent参数传递以创建子类别。

然而,这样做真的很奇怪。类别树在整个站点的类别选择字段中可见,但在类别列表中不可见 - 只有父猫在那里可见。此外,使用 get_posts 等函数时,我似乎无法正确检索孩子。

我尝试创建类别并回显 id,然后再次运行相同的脚本,但仅创建具有此 id 硬编码的子类别 - 它成功了!

对我来说唯一合乎逻辑的解释是,wordpress 会以某种方式缓存查询,并且不会在第一次插入时立即执行,因此在关系方面会搞砸。

有任何想法吗?

4

1 回答 1

0

我在这里找到了一个很长的讨论http://core.trac.wordpress.org/ticket/14485

然而,它并没有帮助。我在这里找到了一个可行的解决方案https://wordpress.stackexchange.com/questions/49634/weird-behaviour-when-adding-terms-term-taxonomies-programmatically

只需delete_option('taxonomy-slug_children');在父类别和子类别的创建之间调用。

于 2012-11-15T23:05:54.140 回答