sonia maklouf sonia maklouf - 4 months ago 19
PHP Question

WooCommerce get category slug - Undefined property notice with a function

I use this function to convert the woocommerce category id into a category slug

function woocommerceCategorySlug($id){
$term = get_term( $id, 'product_cat' );
return $term->slug;
}


This is working, but the problem is that i'm getting a notice


Notice: Undefined property: WP_Error::$slug



Is there a way to avoid this notice?

Answer

The working solution for this is to use WordPress native function get_term_by() and to transpose it in your code this way:

function woocommerceCategorySlug( $id ){
    $term = get_term_by('id', $id, 'product_cat', 'ARRAY_A');
    return $term['slug'];       
}

Reference: