Je peux obtenir le permalien d'une balise ou d'une catégorie de publication spécifique, mais que faire si je veux obtenir le permalien d'un type de publication personnalisé? Je ne trouve rien dans le Codex ou ailleurs sur la façon de procéder.
Je peux obtenir le permalien d'une balise ou d'une catégorie de publication spécifique, mais que faire si je veux obtenir le permalien d'un type de publication personnalisé? Je ne trouve rien dans le Codex ou ailleurs sur la façon de procéder.
Réponses:
Dans la boucle, vous pouvez simplement utiliser the_permalink()
. En dehors de la boucle, vous pouvez utiliser get_permalink( $id )
.
Je sais que ce message est peut-être ancien, mais juste au cas où quelqu'un d'autre chercherait la fonction qui le fait, voici celle que j'ai écrite. $ post_type doit être passé en tant que variable :)
if( !function_exists( 'wp_get_post_type_link' ) ){
function wp_get_post_type_link( &$post_type ){
global $wp_rewrite;
if ( ! $post_type_obj = get_post_type_object( $post_type ) )
return false;
if ( get_option( 'permalink_structure' ) && is_array( $post_type_obj->rewrite ) ) {
$struct = $post_type_obj->rewrite['slug'] ;
if ( $post_type_obj->rewrite['with_front'] )
$struct = $wp_rewrite->front . $struct;
else
$struct = $wp_rewrite->root . $struct;
$link = home_url( user_trailingslashit( $struct, 'post_type_archive' ) );
} else {
$link = home_url( '?post_type=' . $post_type );
}
return apply_filters( 'the_permalink', $link );
}
}
J'espère que cela aide ! :)