Теперь вы знакомы со структурой сайдбара, и мы продолжаем работать над ним, а в частности над отображением ссылок на страницы. Когда мы закончим стандартный сайдбар, я покажу вам, как можно его виджетировать.
Добавьте следующий код вверху блока Categories:
<?php wp_list_pages(); ?>
Сохраните и обновите браузер. По умолчанию, у вас есть только одна страница - About. Я добавил больше страниц и подстраниц в блог для примера, поэтому у меня четыре уровня вложенности. Вот как это должно выглядеть:
Откройте исходный код страницы в вашем браузере, чтобы увидеть, что функция wp_list_pages() сгенерировала всю остальную структуру и код. Вот пример:
Во-первых, она везде расставляет элемент списка (LI). Во-вторых, она дает номенклатуре название Pages. В-третьих, она добавляет еще один ненумерованный список (UL) под заголовок Pages, внутри элемента списка. Также, она окружает каждую ссылку тэгами <li> и </li>.
Обратите внимание на то, что заголовок “Pages” не совпадает по размерам с заголовком “Categories” для перечисления ссылок на категории.
Как сделать так, чтобы они совпадали? Добавьте ‘title_li=<h2>Pages</h2>’ к wp_list_pages().
Сохраните файл и обновите браузер, чтобы увидеть изменения:
title_li – это атрибут, служащий для подбора внешнего вида заголовка для списка ссылок на страницы. <h2>Pages</h2> - это значение атрибута title_li.
Дальнейшее оформление:
В моем примере вы увидели 4 уровня страниц. Некоторый типы дизайна не могут справиться с таким количеством уровней в пределах сайдбара. Чтобы ограничить число уровней для отображения, добавьте атрибут depth к функции wp_list_pages() и установите число уровней для него, например - 3.
Обратите внимание, Я добавил depth=3&, но не просто depth=3. Знак & стоит там для того, чтобы разграничить атрибуты depth и title_li. Если у вас есть только страница About или нет вложенных страниц, вы конечно не заметите разницы.
Разница в моем списке будет заметна. Сравните этот скриншот, с тем, что выше:
Ждем продолжения банкета! Хотелось коснуться работы с CSS в WordPresse.
Спасибо огромное!! Очень помогла инфа о том как ограничить уровни для отображения! Вмемориз:)
“Во-первых, она везде расставляет элемент списка (LI). Во-вторых, она дает номенклатуре название Pages. В-третьих, она добавляет еще один ненумерованный список (UL) под заголовок Pages, внутри элемента списка. Также, она окружает каждую ссылку тэгами и .”
как можно это поправить?
т.е. что нужно сделать дабы тэги Li & Ul не расставлялись автоматически?
а мне интересно, как сделать чтоб вообще слово Page не добавлялось
Olga, просто оставьте параметр title_li пустым.
Samu, никак, это принцип работы данной функции. А чем она вас не устраивает?
Ну, это вообще детский лепет. А вот как можно сделать комбинированное меню из страниц и категорий, в качестве их дочерних элементов. К примеру, типа:
СТРАНИЦА “О нас”
- Кто мы
- Наши идеи
- КАТЕГОРИЯ “Наши новости”
– Новость1 в категории
– Новость 2 в категории
- Достижения
чтобы все это дело обновлялось и изменялось из админки без вмешательств в код?
У каждой из новостей по 2 черты спереди конечно, потому что они принадлежат категории. Вторую черту съел визивик.
‘title_li=’ – рулит, ненужное слово “Страницы” отпадает.
А как сделать так чтобы подчинность осталась, но не отображалась в менюшке. А то у меня свыше 20 подчиненных страниц планируется, и меню будет до пола… Никак не могу понять что делать, может плагин какой есть…
Если не ошибаюсь, то попробуй добавить в css строки:
.page_item ul {display:none;}
.current_page_parent ul, .current_page_item ul {display:block;}
все линки на субстраницы должны скрываться и высвечиваться лишь при открытой майнстранице.
Если добавить ещё:
.page_item:hover ul {display:block;}
должны получить выпадающее меню.