Posso ottenere il permalink di uno specifico tag o categoria di post, ma cosa succede se desidero ottenere il permalink di un tipo di post personalizzato? Non riesco a trovare nulla nel Codice o altrove su come farlo.
Posso ottenere il permalink di uno specifico tag o categoria di post, ma cosa succede se desidero ottenere il permalink di un tipo di post personalizzato? Non riesco a trovare nulla nel Codice o altrove su come farlo.
Risposte:
All'interno del loop, puoi semplicemente usare the_permalink()
. Al di fuori del ciclo, puoi usare get_permalink( $id )
.
So che questo post potrebbe essere vecchio ma nel caso in cui qualcun altro stia cercando la funzione che fa questo, ecco quello che ho scritto. $ post_type deve essere passato come variabile :)
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 );
}
}
Spero che sia d'aiuto ! :)