mathiregister
  • 0
Новичок

Список дочерних страниц как обычных страниц?

  • 0

[[code0]]

перечисляет все страницы моего сайта. Если есть дочерние страницы определенной страницы, вывод выглядит следующим образом:

<li class="page_item page-item-2">
    <a href="http://domain.com/about" title="About">About</a>
    <ul class="children">
        <li class="page_item page-item-29">
            <a href="http://domain.com/about/subpage" title="Subpage">Subpage</a>
            <ul class="children">
                <li class="page_item page-item-39"><a href="http://domain.com/about/subpage/subsub" title="SubSub">SubSub</a></li>
            </ul>
        </li>
    </ul>
</li>

Есть ли простой трюк для печати дочерних страниц без отдельных, чтобы вывод выглядел так:

<li class="page_item page-item-2">
    <a href="http://domain.com/about" title="About">About</a>
</li>
<li class="page_item page-item-29">
    <a href="http://domain.com/about/subpage" title="Subpage">Subpage</a>
</li>
<li class="page_item page-item-39"><a href="http://domain.com/about/subpage/subsub" title="SubSub">SubSub</a>
</li>

Мне нужна эта версия только для определенной части моей страницы, поэтому она не должна быть фильтром, добавляемым в wp_list_pages().

Любая идея, как это сделать?

Share
  1. вы можете использовать функцию get_pages(), например:

    $mypages = get_pages();
    echo '<ul>';
    foreach($mypages as $page){     
        echo '<li class="page_item page-item-'.$page->ID.'"><a href="'.get_page_link($page->ID).'">'.$page->post_title.'</a></li>';
    }
    echo '</ul>';
    
    • 0
  2. На самом деле, я считаю, что переход depth=-1 к wp_list_pages() должен отображать все страницы в виде плоского невложенного списка. Однако он не сохранит порядок подстраниц, поэтому вам не гарантируется, что «Подстраница» сразу последует за «О программе» в вашем примере… Все будет упорядочено по полю, выбранному в sort_column параметре.

    • 0
  3. Не по умолчанию. wp_list_pages() не имеет «иерархического» аргумента. Он всегда будет выводить страницы как иерархические.

    Вы можете изменить CSS так, чтобы дочерние UL и LI выглядели идентичными родительским UL/LI, но страницы по-прежнему будут перечислены в иерархическом порядке.

    • 0

Оставить ответ

You must login to add an answer.