2009-08-20 11 views
6

मान लें कि मेरे पास तीन अलग-अलग पेज हैं, पेज 1, पेज 2 और पेज 3।वर्डप्रेस: ​​मैं एक पेज पर एकाधिक पेज कैसे प्रदर्शित कर सकता हूं?

मैं अपने स्थिर फ्रंट पेज पर प्रदर्शित करने के लिए पेज 1 और पेज 2 चाहता हूं। क्या मैं लूप को केवल पृष्ठ 1 और पेज 2 खींचने के लिए प्रतिबंधित करता हूं, या क्या मुझे लूप शुरू करने की आवश्यकता है, नाम = "पृष्ठ 1" या उसके जैसा कुछ परीक्षण करें, और उसके बाद प्रिंट करें? धन्यवाद! -Joe

उत्तर

7

मैं पाश को छोड़ जाएगा और यहां बताए अनुसार बस get_page($id) का उपयोग करें:

http://codex.wordpress.org/Function_Reference/get_page

सभी आप जानना चाहते हैं आईडी अपने पृष्ठों के के है, और आप एक बार में एक खींच सकते हैं जहाँ भी तुम चाहो।

+3

अगर मैं मैं इन पृष्ठों में से प्रत्येक पर Wordpress में निर्दिष्ट टेम्पलेट लागू करना चाहते थे? – Prusprus

+0

यह दृष्टिकोण अब –

+0

को हटा दिया गया है, मैं इस प्रश्न का उत्तर भी ढूंढ रहा हूं, लेकिन 'get_page' अब बहिष्कृत कर दिया गया है। क्या कोई वैकल्पिक विकल्प सुझा सकता है? – mattnewbie

1

यहां एक उदाहरण है कि आप इसे कैसे कर सकते हैं। यह कोड काम करेगा यदि आपके पास ऐसे सभी पृष्ठ हैं जिन्हें आप एक माता-पिता के अंतर्गत प्रदर्शित करना चाहते हैं। इस मामले में, मैं होम पेज के नीचे पेज डाल रहा था (p.post_parent = 2)।

if ($post->post_type == 'page') {      

    $pages = $wpdb->get_results("SELECT p.ID, p.post_name, p.post_title, p.post_parent, pm.meta_value FROM $wpdb->posts AS p LEFT JOIN $wpdb->postmeta AS pm ON pm.post_id=p.ID AND pm.meta_key='wp_menu_nav' LEFT JOIN $wpdb->posts AS P ON P.ID=p.post_parent WHERE p.post_parent = 2 AND p.post_type='page' AND p.post_status='publish' ORDER BY p.menu_order ASC"); 

    if ($wpdb->num_rows > 0) {       

     foreach($pages as $page) { 

      //echo $page->ID . "<br>"; 
      $args = array('numberposts' => 1, 'post_type'=> 'page', 'include' => $page->ID, 'post_status' => 'published'); 

      $myposts = get_posts($args); 

      foreach($myposts as $mypost) { 
       setup_postdata($mypost); 
       echo the_content(); 
      } 

     } 

    } 

} 
+1

आमतौर पर कच्चे SQL क्वेरी का उपयोग करना अच्छा नहीं है यदि आप इससे बच सकते हैं। वर्डप्रेस के साथ पृष्ठों की मनमानी संख्या तक पहुंचने के तरीकों से बहुत सारे तरीके हैं। get_page() या 'pre_get_posts' पर क्वेरी को संशोधित करना अच्छी तरह से काम करेगा। –

+1

आपका मतलब वर्डप्रेस फ़ंक्शंस है जो डेटाबेस को कई अनावश्यक कॉल और कनेक्शन बनाता है? कुछ कार्यों को संदर्भित करने के बजाय वास्तव में कुछ कोड नमूने देने के बारे में जो कोई भी देख सकता है, जो किसी की सहायता नहीं करता है? मैंने जो पेशकश की वह एक असली समाधान था जो काम करता है ;-) – John

संबंधित मुद्दे