2009-08-20 23 views

cevap

7

ben döngü atlayıp burada açıklandığı şekilde basitçe get_page($id) kullanırsınız:

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

Bilmeniz gereken tek şey sayfaların kimliklerini olduğunu ve bir teker teker indirebiliriz istediğin herhangi bir yer.

+3

Bu sayfaların her birinde WordPress'te belirtilen şablonu uygulamak istedim? – Prusprus

+0

Bu yaklaşım şimdi –

+0

kullanımdan kaldırıldı. Bu soruyu bir cevap olarak da arıyorum, ancak 'get_page' artık kullanımdan kaldırıldı. Birisi alternatif önerebilir mi lütfen? – mattnewbie

1

İşte bunu nasıl yapabileceğinize dair bir örnek. Bir ebeveynin altında görüntülenmesini istediğiniz tüm sayfalara sahipseniz bu kod çalışır. Bu durumda, sayfaları ana sayfanın altına koyuyordum (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

Genellikle, bunu önlemek için ham SQL sorgularını kullanmak iyi bir fikir değildir. WordPress ile rastgele sayfa sayısına erişmenin birçok yolu vardır. get_page() veya 'pre_get_posts' adresindeki sorguyu değiştirmek iyi çalışır. –

+1

Veritabanı için birden fazla gereksiz çağrı ve bağlantı yapan WordPress işlevlerini mi kastediyorsunuz? Hiç kimsenin bulunamayacağı bazı işlevlere başvurmak yerine, bazı kod örneklerini vermek yerine, kimseye yardımcı olmaz mı? Ne teklif etti ;-); gerçek bir çözüm oldu – John

İlgili konular