我试着用过滤器wp_get_object_terms
像这样:
function add_object_terms($terms, $object_ids, $taxonomies, $args){
if (isset( $_GET[ \'tags\' ]) && str_replace("\'","",$taxonomies) == "post_tag") {
$newterms = explode(",",$_GET[\'tags\']);
return array_merge($terms, $newterms);
} else {
return $terms;
}
}
add_filter(\'wp_get_object_terms\', \'add_object_terms\',1,4);
但这不起作用,可能返回值的格式错误,我没有查找它,而是尝试了其他类似的过滤器:
function add_tags($tags_to_edit, $taxonomy){
if (isset( $_GET[ \'tags\' ]) && $taxonomy == \'post_tag\') {
return $_GET[\'tags\'];
} else {
return $tags_to_edit;
}
}
add_filter(\'terms_to_edit\', \'add_tags\',1,2);
这是可行的,但只有同时使用第一个过滤器,这是因为如果没有要处理的条款,第二个过滤器将不会运行。