[WP.org] Problème de 404

  • Avatar de Inconnu

    Bonjour,

    Ma configuration WP actuelle
    – Version de WordPress : 3.5.1
    – Thème utilisé : custom

    Problème(s) rencontré(s) :

    Bonjour,

    J’ai crée un custom post et une taxonomy attachée, les URLs sont de ce type :

    taxonomy : /prefixe/catégorie/
    sub taxonomy : /prefixe/sous catégorie/
    custom post : /prefixe/categorie/post-name/

    Tout fonctionne nikel, j’ai voulu rendre ce systeme d’URL disponible :

    taxonomy : /prefixe/catégorie/
    sub taxonomy : /prefixe/catégorie/sous catégorie/

    J’ai fait cela en indiquant hierarchical : true sur le rewrite de mon register_taxonomy
    Depuis que j’ai fait cela mes URLs de custom post ne fonctionne plus, j’arrive sur la 404…

    Auriez vous une idée de ce qui se passe ?

    Merci bcp pour l’aide.

  • Avatar de Inconnu

    Du coup voici le code :

    register_post_type(self::$type_custom_post,
    array(
    ‘labels’ => array(
    ‘name’ => ‘Formations’,
    ‘singular_name’ => ‘Formation’
    ),
    ‘public’ => true,
    ‘rewrite’ => array(‘slug’ => ‘formations/%formation%’, ‘with_front’ => true, ‘hierarchical’ => false),
    ‘supports’ => array(‘title’,’editor’,’thumbnail’,’custom-fields’,’excerpt’, ‘revisions’, ‘tag’),

    ‘taxonomies’ => array(‘post_tag’)
    )
    );

    register_taxonomy(self::$type_custom_post_category,
    array(self::$type_custom_post),
    array(
    ‘hierarchical’ => true,
    ‘public’ => true,
    ‘label’ => ‘Catégories formation’,
    ‘singular_label’ => ‘Catégorie formation’,
    ‘rewrite’ => array(‘slug’ => ‘formations’, ‘with_front’ => true, ‘hierarchical’ => true),
    ‘show_admin_column’ => true
    )
    );

    Le problème vient donc du fait que c’est le même prefixe qui est utilisé pour le custom post et sa taxonomy
    Du coup pensez vous que c’est possible de rendre ce systeme d’URL possible ?
    Merci de votre aide

  • Avatar de Inconnu

    Voici la solution que je suis arrivé à trouver :
    add_filter( ‘rewrite_rules_array’, array(&$this, ‘insertRewriteRuleSubTaxonomy’) );

    function insertRewriteRuleSubTaxonomy( $rules )
    {

    $t_categories = get_categories(
    array(
    ‘taxonomy’ => NQ_Formation::$type_custom_post_category,
    ‘hide_empty’ =>0,
    ‘hierarchical’ => 1
    )
    );

    $newrules = array();

    foreach($t_categories as $category){
    if($category->parent != 0){
    $newrules[‘formations/(.+?)/(‘.$category->slug.’)/?$’] = ‘index.php?formation=$matches[2]’;
    }
    }

    return $newrules + $rules;
    }

    Je rajoute donc l’ensemble des rewrtie en « dur »
    A+

  • Avatar de Inconnu

    Vous avez un blogue autohébergé WordPress et vous n’étiez donc pas au bon endroit. La prochaine fois, veuillez poser votre question sur les forums appropriés à : http://www.wordpress-fr.net/support/

    Vous vous trouvez actuellement dans les forums pour blogues hébergés par WordPress.com. Nos réponses ne sont donc pas pertinentes à votre situation, car nous n’avons aucun accès au code PHP ici.

  • Le sujet ‘[WP.org] Problème de 404’ est fermé aux nouvelles réponses.