Come togliere la base path dalla categoria e dalle custom taxonomy

Lavorando insieme a diverse figure professionali, molto spesso devo cooperare anche con dipendenti che seguono la Search Optimization di un sito internet.

Molto spesso quello che mi chiedono è quello di poter togliere la base path dall’url delle categorie per poter indicizzare meglio e attraverso parole chiave specifiche un dato tipo di contenuto.

Come rimuovere il prefisso delle categorie e dalle custom taxonomy

Le istruzioni che di solito do per fare questa operazione sono le seguenti:

  • se si usa il plugin Yoast Seo per meta title e meta description esso ha un’impostazione che permette la rimozione del prefisso delle categorie.
  • Fatto questo bisogna andare a ricostruire i permalink ma prima di farlo bisogna settare la base delle categorie (e dei tag) con un puntino.

In questo modo dovrebbe funzionare la richiesta SEO. Molte volte però non ho trovato risposta in questa soluzione. E bisogna aggirare il problema, come al solito, in altri modi.

Quello che ho potuto osservare è che comunque WordPress tende a non riconoscere un contenuto o un tipo di contenuto se prima non gli si dice: questo url corrisponde a questo tipo di contenuto. Per questo WordPress ha bisogno dei base path.

 

E infatti, approfondendo l’argomento ho trovato, per quanto riguarda Woocommerce questo articolo:

https://docs.woocommerce.com/document/removing-product-product-category-or-shop-from-the-urls/
In sostanza, viene sconsigliata la rimozione della base path per quanto riguarda le categorie dei prodotti, perchè, a detta di Woocommerce stesso, WordPress altrimenti fa fatica a capire quale contenuto restituire e impiegherebbe molto più lavoro per capire la pagina da restituire.

Per fortuna però, cercando e cercando, ho trovato molti che hanno avuto nel corso del tempo lo stesso problema.

Ho usato questo plugin che permetta appunto di rimuovere il percorso di base dalle categorie di prodotto di Woocommerce e dalle pagine dei prodotti stessi.

Premmerce Permalink Manager for WooCommerce


Però ancora nessuna novità per quanto riguarda le Category e le custom Taxonomy.
Ma sono sicura che è solo questione di tempo e presto risolverò anche questa questione!
Non ho provato, ma la prossima volta che ne ho bisogno lo faccio di sicuro.
Potrebbe essere utile anche questo codice da inserire in function.php del tema child.


/*
* Remove product-category in URL
* Author: levantoan.com
*/
add_filter( 'term_link', 'devvn_product_cat_permalink', 10, 3 );
function devvn_product_cat_permalink( $url, $term, $taxonomy ){
switch ($taxonomy):
case 'product_cat':
$taxonomy_slug = 'product-category'; //Change product-category to your product category slug
if(strpos($url, $taxonomy_slug) === FALSE) break;
$url = str_replace('/' . $taxonomy_slug, '', $url);
break;
endswitch;
return $url;
}
// Add our custom product cat rewrite rules
function devvn_product_category_rewrite_rules($flash = false) {
$terms = get_terms( array(
'taxonomy' => 'product_cat',
'post_type' => 'product',
'hide_empty' => false,
));
if($terms && !is_wp_error($terms)){
$siteurl = esc_url(home_url('/'));
foreach ($terms as $term){
$term_slug = $term->slug;
$baseterm = str_replace($siteurl,'',get_term_link($term->term_id,'product_cat'));
add_rewrite_rule($baseterm.'?$','index.php?product_cat='.$term_slug,'top');
add_rewrite_rule($baseterm.'page/([0-9]{1,})/?$', 'index.php?product_cat='.$term_slug.'&paged=$matches[1]','top');
add_rewrite_rule($baseterm.'(?:feed/)?(feed|rdf|rss|rss2|atom)/?$', 'index.php?product_cat='.$term_slug.'&feed=$matches[1]','top');
}
}
if ($flash == true)
flush_rewrite_rules(false);
}
add_action('init', 'devvn_product_category_rewrite_rules');
/*Fix 404 when creat new term*/
add_action( 'create_term', 'devvn_new_product_cat_edit_success', 10, 2 );
function devvn_new_product_cat_edit_success( $term_id, $taxonomy ) {
devvn_product_category_rewrite_rules(true);
}

Hai un problema con il web?

Il tuo sito internet non vuole funzionare?

Vuoi rinnovarlo o sistemarlo?

Hai un’idea di integrazione ma non sai se è possibile realizzarla o meno?

    Accetto la Privacy Policy
    Autorizzo al trattamento dei miei dati personali, per ricevere le informazioni richieste attraverso questo modulo di contatto. I dati da te inseriti attraverso questo modulo verranno utilizzati solo per essere da me ricontattato.

    Recensioni

    Scrivimi una recensione

    Questo QR Code ti permette di lasciarmi una recensione in maniera facile e veloce.

    Altrimenti qui sotto ti lascio un bottone, con il quale puoi lasciare la recensione direttamente su Google My Business.

    Lascia una recensione su Google