• Авторизация


Как сделать вывод детей страницы в теле страницы 21-03-2009 23:23 к комментариям - к полной версии - понравилось!


Оригинал сообщения
Уже давно хотел попробовать сделать на Wordpress контентный проект, ведь этот движок очень неплох с точки зрения поисковой оптимизации, к тому же знаком лично мне, ведь я уже поднял и поддерживаю на нем несколько блогов. Сегодня хочу рассказать именно об этом.

Чуть меньше года назад зарегил домен для контентного сайта, затем установил WordPress и бесплатную темку оформления, которая мне тогда приглянулась достаточно приличным, и в то же время, скромным внешним видом. Ни шатко, ни валко, написал несколько страничек, создал примитивную структуру и стал ждать… Для себя вопрос иерархии решил так - новости сайта, сериала и т.д. пусть будут записями блога, а странички актеров и персонажей - соответственно, статичными страницами.

После того, как на сайте появились первые посетители, вплотную встал вопрос о том, что нужна нормальная структура, ведь Вордпресс не создает категории для статичных страниц, поэтому страницы с героями сериала, актерами, и т.д., идут вперемешку. Выход, конечно, есть - вложенные страницы. Например, создаем страничку “Персонажи” и подчиняем все странички ей, делаем ее родительской страницей всех этих страниц.

С тем, чтобы отсортировать станицы по уровню вложенности я разобрался очень и очень быстро - дизайн сайта подразумевает вертикальное и горизонтальное меню, причем горизонтальное, как вы понимаете, гораздо более ограничено по месту… Поэтому в горизонтальном меню я оставил только страницы первого уровня вложенности, а в вертикальном меню в сайдбаре я вывел все страницы сайта в виде дерева. Конечно, без проблем не обошлось - пришлось основательно погуглить, чтобы правильно задать последовательность отображения страниц в этом меню.

Таким образом, основательной проблемой для меня остались только сами страницы, являющиеся родителями множества других страниц - ведь на них нужно бы перечислить все статьи в этой категории, то есть все подчиненные этой странице страницы.

До недавнего времени все находилось в подвешенном состоянии, однако сегодня нашлось немного времени погуглить на эту тему, и я нашел решение. Решение заключается в том, что нужно покопаться в файлах шаблона темы. Скомбинировав парочку удачных решений, получил вот что:

1. в папке темы создал файл navy.php , содержащий следующую запись:
<ul>

<?php

global $id;

wp_list_pages(”title_li=&child_of=$id&show_date=modified

&date_format=$date_format”); ?>

</ul>

Этот код (собстна wp_list_pages с нужными аргументами) отвечает за вывод страниц, являющихся детьми текущей страницы, страниц, для которых текущая страница является родительской.

Однако, от того, что я создал файл navy.php, абсолютно ничего не изменилось - его еще нужно вставить в нужное место и в нужный файл… Нет ничего проще - идем в файл page.php и в нужном месте (можно экспериментировать, хотя, как мне кажется, там все и так достаточно понятно и наглядно) вставляем следующий код:
<?php

if (is_page(array (5,7,133))) {

// looking for page 5, 7, 133

include(TEMPLATEPATH . ‘/navy.php’);

}

?>

где (array (5,7,133) - массив, в котором перечислены ID всех страниц, на которых нужно выводить список вложенных страниц. Таким образом я перестраховался в том плане, что, возможно, будут страницы, имеющие другую логику вложения, и для них выводить это все не нужно. Вот и все танцы с бубном, тем, у кого возникнет желание повторить это, думаю, проблем не возникнет. Если что-то непонятно - спрашивайте, отвечу по мере сил.

Постовой:

В отличие от остального китайского ширпотреба китайская косметика еще не так известна у нас… Что ж, как говорится, поживем - увидим…

Если вам нужна всенаправленная антенна wifi или другое wifi оборудование, посетите интернет-магазин technotrade.com.ua - вы будете приятно удивлены!

Киноблоги, которые можно найти в поиске по запросам “скачать фильм, новинки фильмов” - прекрасный способ ориентироваться в новостях кино и телевидения.
Google Bookmarks Digg Reddit del.icio.us Ma.gnolia Technorati Slashdot Yahoo My Web News2.ru БобрДобр.ru RUmarkz Ваау! Memori.ru rucity.com МоёМесто.ru Mister Wong Яндекс.Закладки



Я сейчас нахожусь дома
Мой настрой позитивный
[показать]LIci WP - WordPress crossposting plugin
вверх^ к полной версии понравилось! в evernote


Вы сейчас не можете прокомментировать это сообщение.

Дневник Как сделать вывод детей страницы в теле страницы | pan_yan - Дневник pan_yan | Лента друзей pan_yan / Полная версия Добавить в друзья Страницы: раньше»