स्लग का उपयोग करके पेज कंटेंट प्राप्त करें


9

मैं पृष्ठ सामग्री प्राप्त करने की कोशिश कर रहा हूं जब मुझे केवल स्लग स्ट्रिंग पता है।

क्या इसके लिए कोई फ़ंक्शन है, या ऐसा करने का एक आसान तरीका है या यह SQL के माध्यम से ऐसा करने का मामला है?

बहुत बहुत धन्यवाद

जवाबों:


30

उपयोग get_posts()और पैरामीटर nameजो स्लग है:

$page = get_posts( array( 'name' => 'your-slug' ) );

if ( $page )
{
    echo $page[0]->post_content;
}

ध्यान रखें कि पोस्ट प्रकार get_posts()चूक में है 'post'। यदि आप एक पृष्ठ का उपयोग करना चाहते हैं ...

$page = get_posts(
    array(
        'name'      => 'your-slug',
        'post_type' => 'page'
    )
);

यदि आप चाहते हैं कि सभी सार्वजनिक पोस्ट प्रकार (अटैचमेंट को छोड़कर) पोस्ट प्रकार के तर्क को सेट करें 'any'। तब आप एक से अधिक परिणाम प्राप्त कर सकते थे क्योंकि स्लग अलग-अलग पोस्ट प्रकारों में अद्वितीय नहीं हैं।


4

आप get_page_by_title()फ़ंक्शन का उपयोग करके इसके शीर्षक से एक पृष्ठ प्राप्त कर सकते हैं ।

आप इसे इस तरह से उपयोग कर सकते हैं (यह मानते हुए कि आप सामग्री दिखाना चाहते हैं):

$page = get_page_by_title('Your Title'); 
$content = apply_filters('the_content', $page->post_content);
echo $content;

बीटीडब्ल्यू, स्लग का उपयोग करके पेज प्राप्त करने के लिए:

function get_page_id_by_slug($slug){
    global $wpdb;
    $id = $wpdb->get_var("SELECT ID FROM $wpdb->posts WHERE post_name = '".$slug."'AND post_type = 'page'");
    return $id;
}

$page = get_post(get_page_id_by_slug('my-slug'));

4

यदि प्रश्न में स्लग के साथ पृष्ठ पर

सशर्त टैग पर पढ़ें :
is_page()स्लग को तर्क के रूप में भी लेता है।

इसलिये,

if( is_page( 'your-slug' ) ) {
     // fetch content
}

जो चाहोगे, करोगे।

यदि किसी अन्य पेज पर

क्या आपको इस बात पर दिलचस्पी होनी चाहिए कि पोस्ट पेज पर पेज / कंटेंट को लाने के लिए कैसे कहा जाए जब आप पेज पर नहीं होंगे, तो आप get_postsएक स्लग को भी फीड कर सकते हैं । यह कोडेक्स में प्रलेखित नहीं है।

निम्नलिखित एक स्लग से आईडी लाएगा:

$args = array(
    'name' => 'your-slug'
);
$posts_from_slug = get_posts( $args );

// echo fetched content
echo $posts_from_slug[0]->post_content;

2

का उपयोग करें get_page_by_path

वाक्य - विन्यास

<?php get_page_by_path( $page_path, $output, $post_type ); ?>

पैरामीटर

उदाहरण:

//Returns the animal with the slug 'cat'
get_page_by_path('cat', OBJECT, 'animal');

अधिक संदर्भ के लिए वर्डप्रेस फ़ंक्शन संदर्भ देखें

मैं इस कोड का उपयोग तब करता हूं, जब किसी पृष्ठ से थीम टेम्पलेट पॉपुलेट करता है,

        $about = get_page_by_path('about'); 
        $content = apply_filters( 'the_content', $about->post_content ); 
        echo $content;
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.