मुझे कस्टम पोस्ट प्रकार की अनुमति कैसे मिलती है?


15

मैं एक विशिष्ट पोस्ट टैग या श्रेणी का पर्मलिंक प्राप्त कर सकता हूं, लेकिन क्या होगा यदि मैं एक कस्टम पोस्ट प्रकार का पर्मलिंक प्राप्त करना चाहता हूं? मैं कोडेक्स या कहीं और कुछ भी नहीं कर सकता कि यह कैसे करना है।

जवाबों:


23

कैसे के बारे में href="<?php echo get_post_type_archive_link( $post_type ); ?>", $post_typeआपकी पोस्ट का प्रकार कहां है?

आगे पढ़े: कोडेक्स


5

लूप के भीतर, आप बस उपयोग कर सकते हैं the_permalink()। लूप के बाहर, आप उपयोग कर सकते हैं get_permalink( $id )


यह एक विशिष्ट पोस्ट या पेज का परमिटलिंक लौटाता है। मैं एक पोस्ट प्रकार के पर्मलिंक को वापस करना चाहता हूं। इसलिए, उदाहरण के लिए, यदि कोई पोस्ट प्रकार "मूवी रिव्यू" कहा जाता है, और उस पोस्ट प्रकार का परमालिंक "www.website.com/movie-reviews" है, तो मुझे वह पर्मलिंक कैसे मिलेगा? हो सकता है कि यह तकनीकी रूप से सही पर्मलिंक न हो, मैं केवल उस पोस्ट प्रकार का URL चाहता हूं।
औद्योगिक थीम्स


1

मुझे पता है कि यह पोस्ट पुरानी हो सकती है, लेकिन अगर कोई ऐसा कार्य खोज रहा है जो यह करता है, तो यहां मैंने लिखा है। $ post_type को एक चर के रूप में पारित किया जाना चाहिए :)

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

आशा करता हूँ की ये काम करेगा ! :)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.