Jak uzyskać bezpośredni link niestandardowego typu postu?


15

Mogę uzyskać bezpośredni link do określonego znacznika postu lub kategorii, ale co, jeśli chcę uzyskać bezpośredni link niestandardowego typu posta? Nie mogę znaleźć niczego w Kodeksie ani nigdzie indziej na temat tego, jak to zrobić.

Odpowiedzi:


23

Co powiesz na to href="<?php echo get_post_type_archive_link( $post_type ); ?>", gdzie $post_typejest twój typ postu?

Dalsza lektura: Kodeks


5

W pętli możesz po prostu użyć the_permalink(). Poza pętlą możesz użyć get_permalink( $id ).


To zwraca bezpośredni link do określonego postu lub strony. Chcę zwrócić bezpośredni link typu posta. Na przykład, jeśli istnieje typ postu o nazwie „recenzje filmów”, a bezpośredni link tego typu postu to „www.website.com/movie-reviews”, jak mogę uzyskać ten link bezpośredni? Może technicznie nie jest to prawdą, chcę tylko adres URL tego typu postów.
Motywy przemysłowe,


1

Wiem, że ten post może być stary, ale na wypadek, gdyby ktoś szukał funkcji, która to robi, oto ta, którą napisałem. $ post_type musi zostać przekazany jako zmienna :)

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 );
    }
}

Mam nadzieję, że to pomoże ! :)

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.