Come posso ottenere il permalink di un tipo di post personalizzato?


15

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:


22

Che ne dici href="<?php echo get_post_type_archive_link( $post_type ); ?>", dov'è il $post_typetuo tipo di post?

Ulteriori letture: Codice


5

All'interno del loop, puoi semplicemente usare the_permalink(). Al di fuori del ciclo, puoi usare get_permalink( $id ).


Ciò restituisce il permalink di un post o una pagina specifici. Voglio restituire il permalink di un tipo di post. Ad esempio, se esiste un tipo di post chiamato "recensioni di film" e il permalink di quel tipo di post è "www.website.com/movie-reviews", come posso ottenere quel permalink? Forse questo non è un vero permalink tecnicamente, voglio solo l'URL di quel tipo di post.
Temi industriali


1

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 ! :)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.