Lorsque je travaille avec le système de permalien de Wordpress, je peux créer de nombreuses options pour créer des permaliens, comme ceci:
/blog/%year%/%monthnum%/%day%/%postname%/
Mais si j'ajoute un nouveau type de contenu, disons des morceaux de portfolio, pour que je puisse avoir une URL du type:
/portfolio/postname/
Les options de permalien que j’ai (et que j’utilise depuis 3 ou 4 ans) signifient que nous avons des urls laides comme:
/ blog/portfolio/habituellement_path
Je veux que tous les liens existants fonctionnent pour les publications qui ont déjà été sur:
blog/YYYY/MM/post-name
Mais je veux aussi rendre les messages personnalisés disponibles sur:
portfolio/post-name
L'approche que je fais normalement serait:
supprimez le slug de blog codé en dur, des permaliens en ce que la nouvelle structure de permalien était /%year%/%monthnum%/%day%/%postname%/
Ajoutez une règle dans Apache à 301 toutes les demandes de domain.com/blog/YYYY/MM/DD/old-post sur domain.com/YYYY/MM/old-post, pour le référencement et autres.
Pour autant que je sache, cela voudrait dire que tous les liens existants vers
http://domain.com/blog/YYYY/MM/DD/old-post
fonctionnerait toujours, même si les navigateurs se retrouveraient à:
http://domain.com/YYYY/MM/DD/old-post
J'aurais toujours les URL correctes pour les types de courrier personnalisé aussi, à
http://domain.com/portfolio/post-name
Je me sens assez à l'aise avec cette approche. Je pourrais améliorer la structure de nommage pour le référencement tout en maintenant les performances, en supprimant les jours, voire les années, pour obtenir quelque chose comme ceci:
/%year%/%postname%/
Je ne suis pas sûr de la manière dont j'autoriserais une structure de lien permanent permalink ici, mais y a-t-il autre chose que je devrais garder à l'esprit ici lors de la fixation de liens comme celui-ci?
Lorsque vous enregistrez votre taxonomie, vous pouvez créer la règle de réécriture du slug.
register_taxonomy ('investment_country', array ('investment'), array ('hierarchical' => true, 'labels' => $ labels, 'show_ui' => true, 'query_var' => true, 'rewrite' => tableau ('slug' => 'pays'), ));
alors chaque fois que je montre quelque chose que j'ai inclus dans la taxonomie du pays, je reçois http://www.domain.com/country/unitedkingdom par exemple
n'oubliez pas que vous aurez besoin de réenregistrer vos permaliens
j'espère que vous avez créé un type de pot personnalisé appelé portfolio, pour autant que je sache, il suffit d'aller à la structure de permalien personnalisée qui devrait être /% postname% /
Et créez une catégorie personnalisée ou un modèle d'archive pour mettre la main sur le modèle de catégorie portfolio
jetez un oeil à la hiérarchie des modèles http://codex.wordpress.org/Template_Hierarchy
dans votre cas, votre nom de modèle devrait être category-porfolio.php pour single.php, il devrait être single-portfolio.php.
ces modèles sont exclusifs pour votre type de publication de portefeuille