获取与即将删除的标签/猫相关的所有帖子/页面ID

时间:2013-08-27 作者:John

当删除标签、类别或其他术语时,我希望在删除之前获得与术语相关的帖子ID。Wordpress使用wp\\u delete\\u术语,可在分类法中找到。php,删除一个术语。在这个函数中,最早的钩子是“delete\\u term\\u taxonomy”。然而,在这个钩子触发之前,这些关系似乎已经被删除了。

我想进行以下查询:

SELECT object_id FROM $wpdb->term_relationships WHERE term_taxonomy_id = $id
这通常会返回与术语(类别/标签/等)相关的所有帖子ID。还有别的钩子我可以用吗?或者是黑客?

1 个回复
SO网友:Charles Clarkson

在这个函数中,最早的钩子是“delete\\u term\\u taxonomy”。然而,在这个钩子触发之前,这些关系似乎已经被删除了。

据消息人士透露,\'delete_term_taxonomy\' 在删除之前运行,并且\'deleted_term_taxonomy\' 紧随其后运行。在此代码之前还有其他事情要做,比如更改子关系。

do_action( \'delete_term_taxonomy\', $tt_id );
$wpdb->delete( $wpdb->term_taxonomy, array( \'term_taxonomy_id\' => $tt_id ) );
do_action( \'deleted_term_taxonomy\', $tt_id );
你确定你没有使用\'deleted_term_taxonomy\' 错误地

还有别的钩子我可以用吗?

如果分类法是分层的,\'edit_term_taxonomies\'\'edited_term_taxonomies\' 先运行:

do_action( \'edit_term_taxonomies\', $edit_tt_ids );
$wpdb->update( $wpdb->term_taxonomy, compact( \'parent\' ), array( \'parent\' => $term_obj->term_id) + compact( \'taxonomy\' ) );
do_action( \'edited_term_taxonomies\', $edit_tt_ids );

结束

相关推荐

hooks & filters and variables

我是updating the codex page example for action hooks, 在游戏中完成一些可重用的功能(最初是针对这里的一些Q@WA)。但后来我遇到了一个以前没有意识到的问题:在挂接到一个函数以修改变量的输出后,我再也无法决定是要回显输出还是只返回它。The Problem: 我可以修改传递给do_action 用回调函数钩住。使用变量修改/添加的所有内容仅在回调函数中可用,但在do_action 在原始函数内部调用。很高兴:我将其修改为一个工作示例,因此您可以将其复制/粘贴