我有一个非常奇怪的问题。
我在wordpress中使用wp_insert_category()来创建一个类别并检索新的id。然后我调用另一个wp_insert_category并将此id作为category_parent
参数传递以创建子类别。
然而,这样做真的很奇怪。类别树在整个站点的类别选择字段中可见,但在类别列表中不可见 - 只有父猫在那里可见。此外,在使用get_posts等功能时,我似乎无法正确检索孩子。
我尝试创建类别并回显id然后再次运行相同的脚本,但只创建了这个id硬编码的子类别 - IT WORKED!
对我来说,唯一合乎逻辑的解释是wordpress会以某种方式缓存查询,并且不会立即执行第一个插入,因此在涉及到关系时会搞砸。
有什么想法吗?
答案 0 :(得分: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');
。