2015-06-16 60 views
0

我有一個父網頁A與子頁面X,Y,Z,d如何列出wordpress中的所有子頁面?

我要當你去頁X和Y顯示鏈接到頁面的X和Y

所有子網頁,你應該看到所有的子頁面X,Y,Z,d

列表出於某種原因,我只得到了子頁面(d)

我使用這個功能。

$args = array(
'sort_order' => 'asc', 
'sort_column' => 'post_title', 
//'hierarchical' => 1, 
'exclude' => '', 
'include' => '', 
'meta_key' => '', 
'meta_value' => '', 
'authors' => '', 
'child_of' => A, 
'parent' => -1, 
'exclude_tree' => '', 
'number' => '', 
'offset' => 0, 
'post_type' => 'page', 
'post_status' => 'publish' 
); 
$pages = get_pages($args); 

if ($pages) 
{ 



    foreach($pages as $page) 

{ 
$page = '<ul> <li> <a href=" ' . get_page_link($page->ID) . '"> ' .$page->post_title . ' </a> </li></ul>'; 
} 
return $page; 








} 

我在做什麼錯?

+0

怎麼樣簡單的東西: '$ mypages = get_pages(array('child_of'=> A,'sort_column'=>'post_title','sort_order'=>'asc'));' –

回答

0

在這個例子中,你沒有關閉你的if語句。你也可以用你的foreach而不是return來使用echo。我清理了一下你的代碼。

<ul> 
    <?php 
    $args = array(
     'sort_order' => 'asc', 
     'child_of' => '1', 
     'post_type' => 'page', 
     'post_status' => 'publish' 
    ); 
    $pages = get_pages($args); 

    if ($pages) { 
     foreach ($pages as $page) : 
      echo ' <li><a href="' . get_page_link($page->ID) . '"> ' . $page->post_title . ' </a></li>'; 
     endforeach; 
    } 
    ?> 
</ul> 
+0

謝謝@Geoffrey我用foreach:endforeach;而不是foreach(){},它工作。事情是我不想馬上回應,我只是想返回值並稍後調用函數,像wpb_list_child_pages()顯示所有鏈接。當我使用echo $頁面;它的工作原理,當我使用返回$頁;它只顯示一個鏈接 – muzemuze

0

我固定它和它的工作

我修改我的foreach

$links = '';  
foreach($pages as $page) { 

$links .= '<ul> <li> <a href=" ' . get_page_link($page->ID) .  '"> '  .$page->post_title . ' </a> </li></ul>'; 

} 
return $links; 

之前我用
$鏈接=代替$鏈接=

相關問題