Hejsa gutter
Jeg håber en af jer kan hjælpe mig med en ting.
Jeg har skrevet et plugin det via en ajax funktion fjerner et term fra et woocommerce product, efter wp version 3.6 er der en funktion "wp_remove_object_term" men før wp version 3.6 findes der ingen funktion.
Lige nu bruger jeg denne hjælpe funktion
/**
* Remove a given term from the specified post
*
* Helper function since this functionality doesn't exist in core
*/
function rsj_remove_object_term( $post_id, $term, $taxonomy ) {
if ( ! is_numeric( $term ) ) {
$term = get_term( $term, $taxonomy );
if ( ! $term || is_wp_error( $term ) )
return false;
$term_id = $term->term_id;
} else {
$term_id = $term;
}
// Get the existing terms and only keep the ones we don't want removed
$new_terms = array();
$current_terms = wp_get_object_terms( $post_id, $taxonomy, array( 'fields' => 'ids' ) );
foreach ( $current_terms as $current_term ) {
if ( $current_term != $term_id )
$new_terms[] = intval( $current_term );
}
return wp_set_object_terms( $post_id, $new_terms, $taxonomy );
}
Men findes der en bedre funktion, da denne her looper igennem alle terms, hvilket er en tung opgave?
not a support question