remove product-category from url wordpress woocommerce

add_filter('request', 'alter_the_query' );
function alter_the_query( $vars ) {
    global $wpdb;
    if( ! empty( $vars['category_name'] ) || ! empty( $vars['name'] ) ) {
        $slug = ! empty( $vars['pagename'] ) ? $vars['pagename'] : ( ! empty( $vars['name'] ) ? $vars['name'] : ( !empty( $vars['category_name'] ) ? $vars['category_name'] : $vars['attachment'] ) );
        $exists = $wpdb->get_var( $wpdb->prepare( "SELECT t.term_id FROM $wpdb->terms t LEFT JOIN $wpdb->term_taxonomy tt ON tt.term_id = t.term_id WHERE tt.taxonomy = 'product_cat' AND t.slug = %s" ,array( $slug )));
        if( $exists ){
            $old_vars = $vars;
            $vars = array('product_cat' => $slug );
            if ( !empty( $old_vars['paged'] ) || !empty( $old_vars['page'] ) )
                $vars['paged'] = ! empty( $old_vars['paged'] ) ? $old_vars['paged'] : $old_vars['page'];
            if ( !empty( $old_vars['orderby'] ) )
                     $vars['orderby'] = $old_vars['orderby'];
                  if ( !empty( $old_vars['order'] ) )
                     $vars['order'] = $old_vars['order'];   
        }
    }
    return $vars;
}

Reference: https://timersys.com/remove-product-category-slug-woocommerce/

Comments

Popular posts from this blog

dynamic create multiple ckeditor onclick event using jquery

get lat and long from city name using jquery

membership registration and login system in php