2010-06-28 7 views
6

J'ajoute un post_type personnalisé pour Wordpress, et je voudrais la structure permalien pour ressembler à ceci:Utilisation de dates dans CUSTOM post_type Permalinks dans Wordpress 3.0

/%post_type%/%year%/%monthnum%/%postname%/ 

Je ne peux pas comprendre comment ajouter le étiquettes de date. En utilisant ce code, me donne /my_type/example-post-slug/:

register_post_type('customtype', array(
    ...other options... 
    'rewrite' => array('slug' => 'my_type'), 
)); 

Comment inclure les dates?

Répondre

-2

Utilisez ce qu'il fonctionne à 100%:

'rewrite' => array('slug'=>date('Y').'/'.date('m').'/custom_post_type_slug','with_front'=>true) 
1

Vous pouvez y parvenir avec le plug-in Custom Post Type Permalinks. Il suffit d'installer le plugin et de changer le format permalien dans les paramètres.

0

J'ai trouvé une solution partielle qui permet au lien permanent d'être reconnu et préservé lors du chargement de la page dans la barre d'adresse, mais pas mis à jour dans l'écran d'édition ou d'autres liens vers le post sur le site. Ajoutez ce qui suit à functions.php ou à un plugin spécifique à un site, en remplaçant example-post-type par l'identifiant de votre type de message.

function example_rewrite() { 
    add_rewrite_rule('^example-post-type/([0-9]{4})/([0-9]{1,2})/([^/]*)/?','index.php?post_type=example-post-type&year=$matches[1]&monthnum=$matches[2]&name=$matches[3]','top'); 
} 
add_action('init', 'example_rewrite'); 

Il utilise l'API documentée Rewrite here Pour trouver plus de conseils sur la compréhension du processus here voir. Une chose à garder à l'esprit est que peu importe comment vous faites cela, il est impossible que deux postes aient le même slug, même s'ils ont des dates différentes. C'est parce que si le schéma de permalink est jamais changé, ils pourraient entrer en conflit et provoquer des erreurs.

Questions connexes