Menu
Connexion
02/03/2021

Enlever la catégorie de base sur Woocommerce

Voici le snippet (extrait de code à ajouter) dans votre installation pour retirer les slugs par defaut de Woocommerce

 


add_filter('request', function( $vars ) {
global $wpdb;
if( ! empty( $vars['pagename'] ) || ! empty( $vars['category_name'] ) || ! empty( $vars['name'] ) || ! empty( $vars['attachment'] ) ) {
$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;
});

Il suffira après avoir ajouter cette extrait de code d'aller dans Réglages => Permaliens et de remplacer les slugs Woocommerce par ==> . au lieu de /produit/ ou les catégories /category/

Résultat une URL propre monnomdedomaine.com/macategories/ ou monnomdedomaine.com/mon-produit-1/

Check-up de votre site
Passez votre site en revue et améliorez votre site
Entrez l'adresse de votre site ci-dessous
par Julien Gauthier
La newsletters
Une sélection d'articles rien que pour vous

Articles qui pourraient vous plaire

La newsletters
Une sélection d'articles rien que pour vous
Audit Gratuit
Passez votre site en revue
Entrez votre site web ci-dessous