Итак, прошло больше года с тех пор, как я создал тему WordPress, и теперь я начал снова, но столкнулся с проблемой с моим меню на страницах.
Это моя текущая иерархия страниц (я все еще тестирую только имена)
Home
This page
*Child 1
**Grandchild 1
**Grandchild 2
*Child 2
**Grandchild 3
**Grandchild 4
**Grandchild 5
*Child 3
**Grandchild 6
Another page
Теперь, когда я посещаю «Эту страницу», я хочу показать ссылку на «Эта страница» (текущая) и все прямые дочерние элементы (здесь нет внуков) «Эта страница», как в этом эскизе: http://img840.imageshack.us/img840/3006/thispage.png
Теперь, когда я посещаю «Дочерний элемент 1» на «Этой странице», я хочу показать все из меню выше и всех дочерних элементов «Дочерний элемент 1» (Внук 1 и 2) в подпункте «Дочерний элемент 1», как в этом эскизе: http://img4.imageshack.us/img4/7868/child1.png
И теперь, когда я посещаю «Внук 1», я хочу показать то же меню, что и для «Ребенка 1», только с «Внуком 1» в качестве текущего элемента, как в этом скетче: http://img819.imageshack.us/img819/1633/grandchild1.png
Это мой текущий код, основанный на примере в кодексе WordPress (в функции wp_list_pages()) для немного другого типа меню, но он работает не очень хорошо и абсолютно не подходит для крестников.
<?php
if($post->post_parent){
$children = wp_list_pages("title_li=&include=".$post->post_parent."&echo=0");
$children .= wp_list_pages("title_li=&child_of=".$post->post_parent."&echo=0");
}
else{
$children = wp_list_pages("title_li=&child_of=".$post->ID."&echo=0");
}
if ($children) { ?>
<div class="page-menu">
<ul>
<?php echo $children; ?>
</ul>
</div>
<?php } ?>
Мой план состоит в том, чтобы меню было боковой панелью на моей странице, как вы можете видеть на эскизах.
Так кто-нибудь знает, как можно добиться такого результата?