web-dev-qa-db-fra.com

La taxonomie avec_front cause tout

J'ai une taxonomie personnalisée, qui définit la valeur with_front sur false pour que les URL ressemblent à /%type%/%brand%/%product%/ et se dégradent à mesure que nous descendons. Cela me rend toutefois fou. Tout dans le code fonctionne, cela fonctionne, mais cela provoque 404 pour chaque page du site. J'imagine que la raison en est que, par exemple, with_front laisse penser que toutes les demandes concernent des éléments de cette taxonomie. Mais je ne peux pas trouver comment résoudre ce problème.

Juste pour information, créer des étiquettes est ma fonction paresseuse qui produit les étiquettes dont nous avons besoin pour cela.

register_taxonomy ('types','brands',
   array(
       'hierarchical' => false,
       'labels' => make_labels('Type'),
       'show_ui' => true,
       'query_var' => true,
       'rewrite' => array( 'with_front' => false, 'slug' => false)
   )
);

$types = get_terms('types');

foreach($types as $type) {
    add_rewrite_rule("^$type->slug/([^/]*)/([^/]*)/?","index.php?hd_types=$type->slug&brands=\$matches[1]&products=\$matches[2]",'bottom');
    add_rewrite_rule("^$type->slug/([^/]*)/?","index.php?brands=\$matches[1]&types=$type->slug",'bottom');
}

Ensuite, nous créons les marques et les produits personnalisés.

Me rend fou! Merci d'avance.

1
Alex

La réponse à la question se trouve dans les deux posts suivants:

Permaliens dans les types de publication personnalisée

Supprimer le slug de taxonomie d'un permalien de taxonomie hiérarchique personnalisé

Comme je l'ai fait, vous devez ignorer la réécriture automatisée, mais vous devez ajouter $wp_rewrite->use_verbose_page_rules = true; au mélange, sinon vos pages entreront en conflit avec les règles de réécriture que vous avez établies pour votre taxonomie.

2
Alex