Je voudrais réécrire l'URL de type de message par défaut à /blog/2016/11/my-post-name/
sans affecter l'autre URL de type de message. J'ai essayé:
add_action('admin_menu','remove_default_post_type');
function remove_default_post_type() {
remove_menu_page('edit.php');
}
add_action( 'init', 'set_default_post_type', 1 );
function set_default_post_type() {
register_post_type(
'post',
array(
'labels' => array(
'name_admin_bar' => _x( 'Post', 'add new on admin bar' ),
),
'public' => true,
'_builtin' => false,
'_edit_link' => 'post.php?post=%d',
'capability_type' => 'post',
'map_meta_cap' => true,
'hierarchical' => false,
'rewrite' => array(
'slug' => 'blog/%year%/%monthnum%/%postname%/',
'with_front'=> false,
),
'query_var' => false,
'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'trackbacks', 'custom-fields', 'comments', 'revisions', 'post-formats' ),
)
);
}
Mais sans succès. L'URL reste en tant que /blog/my-post
. Existe-t-il un moyen d’avoir des permaliens de types de messages par défaut tels que /blog/2016/11/my-post-name/
(où 2016 est l’année de publication et 11 le mois de publication) Sans affecter les autres URL de publication?
Utilisez le champ de la page admin Settings > Permalinks
pour définir votre structure de lien permanent sur /blog/%year%/%monthnum%/%postname%/
.
Pour empêcher les types de publication personnalisés d'hériter de la structure de publication permanente, définissez with_front
sur false
dans vos arguments register_post_type
pour tous les types de publication personnalisés.
La version 4.4 a également ajouté le filtre register_post_type_args
pour permettre la modification des arguments de type de publication pour les types enregistrés par le code auquel vous n'avez pas accès.
Vous pouvez utiliser Custom Permalink
plugin https://ru.wordpress.org/plugins/custom-permalinks/
Mais il ne peut pas utiliser des "modèles" permanents. Vous devrez entrer votre lien permanent personnalisé pour chaque publication sur la page de modification.