web-dev-qa-db-fra.com

Taxinomie personnalisée Permaliens Redirection

J'ai configuré une taxonomie personnalisée sur un type d'article personnalisé en utilisant les éléments suivants: (Par exemple, le type d'article personnalisé s'appelle newtype et la nouvelle taxonomie s'appelle simplement newtax.

// Create Custom Post Type for newpost
add_action( 'init', 'create_post_type' );
function create_post_type() {
    register_post_type( 'x_newtype',
        array(
            'labels' => array(
                'name' => __( 'New Type' ),
                'singular_name' => __( 'New Type' )
            ),
            'public' => true,
            'has_archive' => true,
            'rewrite' => array('slug' => 'newtype'),
            'taxonomies' => array('category', 'post_tag'),
            'supports' => array('title','editor','excerpt','thumbnail')
        )
    );
}


// Add custom field for custom post type
function new_taxonomy() {
   register_taxonomy(
    'newtax',
    'x_newtype',
    array(
        'hierarchical' => true,
        'label' => 'New Tax',
        'query_var' => true,
        'rewrite' => array('slug' => 'newtax')
    )
);
}
add_action( 'init', 'new_taxonomy' );

Cela fonctionne bien, mais j'avais une question concernant la redirection d'URL.

Actuellement, si vous allez à http://www.domain.com/newtype/newtax-term/post-name/, il sera redirigé vers http://www.domain.com/newtype/post-name/. Quel est le meilleur moyen de permettre à http://www.domain.com/newtype/newtax-term/post-name/ de se charger sans rediriger?

Merci d'avoir lu.

1
Ryan

Quel est le meilleur moyen de permettre à http://www.domain.com/newtype/newtax-term/post-name/ de se charger sans rediriger?

Vous devez ajouter une règle de réécriture personnalisée pour que cela fonctionne. Sinon, WordPress ne comprend pas la partie newtax-term de votre structure de lien permanent et vous redirige vers l’URL qu’elle comprend, qui est %post_type%/%post_slug%.

Si vous voulez comprendre le fonctionnement de l'API WordPress Rewrite, je vous recommanderais de lire l'article de l'API Rewrite: The Basics . Ne ménagez aucun effort pour l'apprendre et vous ne rencontrerez aucun problème.

2
Eugene Manuilov