Фев
3
159

Все про wordpress страницы, функция wp_list_pages

wordpress страницыСмотрю по голосованию, читателям интересны публикации для начинающих. Сегодня именно такая тема, можно сказать продолжение одной из прошедших статей. Помните, я рассказывал про плагины для страниц в wordpress, как мне кажется, вопрос до конца тогда не раскрыл. Точнее я начал сразу с плагинов, а можно было бы немного «подойти издалека». В общем, чтобы всем было понятно зачем wordpress страницы и как с ними работать – читаем дальше.

Конечно, ключевыми понятием в блогах и соответственно системе вордпресс являются записи (посты). Страницы используются не так часто – в основном чтобы донести посетителю какую-то статическую информацию: рассказать о проекте, предоставить контакты и т.п. Более активно данный инструмент используется, когда мы создаем на wordpress стандартный сайт, не блог. Именно поэтому внимание в админке wordpress страницам уделено не очень большое.

wordpress страницы

В меню есть всего 2 пункта, позволяющие изменить текущие и создать новые страницы. При наведения на те или иные записи, как в постах, вы можете быстро поменять их свойства, удалить вовсе или перейти к подробному редактированию. Добавление новой wordpress страницы полностью идентично созданию поста – вы вводите текст, задаете какие-то дополнительные параметры, определяете теги и мета информацию (title, description, keyword).

Кстати, интересной особенностью wordpress страниц есть возможность задавать им определенные шаблоны. Они могут использоваться для отображения другого дизайна или дополнительной функциональности для той или иной страницы. Например, я пару раз добавлял в «о проекте» облако тегов – выглядело достаточно симпатично. Подробнее тему уже рассматривал в статье создание отдельного шаблона страниц в WordPress – если интересно, читаем. Кстати, некоторые wordpress темы содержат в себе специальные файлы шаблонов для страниц.

Вывод wordpress страниц, функция wp_list_pages

Функция wp_list_pages используется для вывода списка страниц со ссылками на них – то есть формирует своего рода меню для сайта или блога. Рассмотрим допустимые параметры, а потом покажу пару примеров.

  • sort_column – задает тип сортировки, по умолчанию страницы размещаются по алфавитному порядку исходя из их заголовка. Можно применить сортировку по дате создания, id, последнему изменению, автору, ссылке или параметру «порядок».
  • sort_order – определяет сортировку по возрастанию или убыванию.
  • exclude – исключаем id страниц из мению.
  • exclude_tree – исключаем по id страницы вместе с подстраницами.
  • include – включает в меню только (!) указанные в этом параметре wordpress страницы.
  • depth – определяет сколько уровней иерархии страниц будет отображено, по умолчанию значение равно 0, то есть выводит все страницы.
  • child_of – выводит подстраницы для выбранной страницы (задается ее id).
  • show_date – показывает дату последнего изменения страницы.
  • date_format – определяет формат выводимой даты.
  • title_li – заголовок для списка страниц.
  • echo – задает отображение меню (по умолчанию True) либо возвращает их список в HTML для использования в PHP.
  • meta_key – включает только страницы, где есть заданное произвольное поле (custom field).
  • meta_value – включает страницы, где есть заданное значения для ключа из произвольного поля.
  • link_before и link_after – текст внутри тега ссылки А, добавлен в wordpress 2.7.
  • authors – добавлять только страницы от определенных авторов.
  • number – количество страниц для отображения, лимит.
  • offset – сколько страниц нужно «пропустить» прежде чем начать отображение.

В принципе, никаких сложностей с wordpress страницами возникнуть не должно. Но приведу все же несколько примеров. Итак, если мы хотим вывести меню, где будут содержаться только избранные несколько страниц + задать для этого блока соответствующий заголовок, то используем код:

<ul>
  <?php wp_list_pages('include=5,9,23&title_li=<h2>Menu</h2>' ); ?>
</ul>

Можно сортировать страницы по дате создания + выводить эту самую дату.

<ul>
  <?php wp_list_pages('sort_column=post_date&show_date=created'); ?>
</ul>

Некоторые другие примеры, а также описание функции wp_list_pages на английском вы можете найти здесь.  Про плагины для сортировки я уже говорил в прошлых публикациях, вроде нечего добавить. Если есть какие-то вопросы по теме – спрашиваем в комментариях.

рейтинг Оцените статью:
Ужасная статьяНичего интересногоТак себеНормальноХорошоКлассный постВ закладки!
(голосов - 8, средний балл: 5,75 из 7)
Загрузка...

категория Категории: Возможности; Начинающим;
теги Теги: , , , .

комментариев 159 к статье “Все про wordpress страницы, функция wp_list_pages”

  • Tod   05.12.2010

    onjee, по моему для каждого пункта меню и так присваивается класс. Если глянуть html код блога, то эти классы можно увидеть и уже под них подстраиваться в css.

  • Леха   13.12.2010

    Очень полезный пост….
    Для новичков это будет незаменимой инфой в их начинаниях

  • amati   18.02.2011

    Здравствуйте! Столкнулся с такой проблемой. Создал нужные мне страницы, но в каждой странице я могу сделать только одну единственную запись. Мне нужно чтоб на каждой из страниц я мог добавить по несколько постов. Возможно ли это? Конечно можно создать рубрики отдельные вместо страниц, тогда подскажите пожайлуста как сделать так чтобы то что я посщу в рубриках не отображалось на главной странице сайта(главная страница должна оставаться статичной) и как мне названия рубрик разместить шапке сайта, там где сейчас находится меню страниц.
    Заранее спасибо.

  • Tod   19.02.2011

    amati, страницы и посты — разные понятия, которые не связаны. Вы правильно сказали, что нужно использовать рубрики. В настройках в меню «Чтение» можно выбрать отображение на главной статической страницы, тогда посты туда попадать не должны. Если просто нужно не отображать категории, то используем плагин Exclude categories с помощью которого можно убрать некоторые категории с главной и RSS.

  • Игорь   20.03.2011

    А можно ли както некоторые страницы в хедере заменить на рубрики???

  • Tod   20.03.2011

    Игорь, в новых версиях вордресс это реально — читаем статью создание и управление меню в wordpress 3.0

  • Наталья   08.06.2011

    Извините за глупый вопрос, но куда коды, которые вы приводили в примере вставлять? Какой файл мне нужно открыть?

  • Дмитрий   18.06.2011

    Действительно полезный пост, т.к. все привыкли писать только о статьях.
    Только вот задача у меня несколько сложнее — меню (список) страниц я хочу передвинуть и изменить визуально (приблизить визуально к кнопкам).

  • Tod   20.06.2011

    Дмитрий, для оформления нужно разбираться с CSS стилями и делать визуально как захочется.

  • Сергей   17.07.2011

    Здравствуйте!

    В принципе, все правильно и логично. «Рис — отдельно, пшено — отдельно». Новости — в Записях, на Страницах — статика. Но здесь у Вас упоминаются какие-то «подстраницы», а их в настройках я что-то не наблюдаю… Хотя, было бы полезно для моего блога.

    И еще… Страница «Скачать» у меня — статичная. Понавтыкал туда ссылок, а она растянулась, как резиновая — терпения даже у меня не хватило, чтобы до конца просмотреть… Как-нибудь, можно установить значение, при котором осуществлялось бы разделение одной страницы на несколько?!

    Спасибо Вам за полезные материалы!

    С уважением,
    Сергей

  • Сергей   17.07.2011

    С подстраницами сам разобрался. Это — не то, что мне нужно ( в том виде, в котором они по умолчанию)…

    Как сделать так, чтобы подстраницы открывались с родительской, а не отдельно висели в меню?

    Например: Заходим на страницу Скачать. Там видим тематические отделы, нажимая на которые переходим непосредственно по интересующей теме.

    Заранее благодарю за ответ!

    С уважением,
    Сергей

  • Tod   18.07.2011

    Сергей, если я правильно понял, то во-первых, убираем из меню вывод подстраниц (задаете параметр для функции wp_list_pages если в шаблоне либо правите настройки виджета). Во-вторых, на «главной странице» создаете вручную в текстовом редакторе ссылки на подстраницы. Таким образом, в меню они отображаться не будут, а зайти на них можно будет так, как вам и нужно было.

  • Сергей   18.07.2011

    Здравствуйте!

    Да, Спасибо!))) Вы очень помогли!)) А я, что-то ступил… Действительно, все логично!!!)))

    Еще раз, Огромное Вам спасибо!)) Пользы от Вашего сайта куда больше, чем от форума mywordpress!!!

    С уважением,
    Сергей

  • Сергей   18.07.2011

    Сделал!))) Все работает, как я и хотел!!!)) Пошел оформлять RSS на Ваш сайт)))

    Спасибо Вам!

    С уважением,
    Сергей

  • Сергей   19.07.2011

    Вот, на всякий случай, выкладываю решение для страниц. Вдруг, у кого-то такая же проблема:

    В depth указываете глубину дочек (если есть). 0 — выводит все, 1 — только родители, 2 и больше — количество уровней вложения.

    Успехов!

  • Сергей   19.07.2011

    ?php wp_list_pages(‘title_li=&depth=’); ?

    Разумеется, в виде тега… Он, почему-то, не выводится здесь…

  • Tod   19.07.2011

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

    <pre lang="html">...код...</prе>
  • max   27.07.2011

    пробую сделать с текстами и аккордами. вот наделал страниц по буквам а, б, в, г…..я , но теперь еще нужен английский алфавит разместить в строчку чуть ниже. Меню страниц отображается только в одну строчку, поэтому, если продолжаю создавать новые страницы, то старые уходят. Есть ли способы как можно решить это?

  • Tod   27.07.2011

    max, если правильно понял ситуацию, то я бы создал еще одно меню и добавил бы в шаблоне где нужно.

  • max   27.07.2011

    я новичок, и не особо понимаю в кодах. я так понимаю этот код, отвечающий за верхнее меню, находится где-то в файле header

  • max   27.07.2011

    пробовал, что вы рекомендовали по ссылке, получилось меню сбоку колонкой. А мне в строку нужно. Вот это изображение меню которое получилось у меня, здесь видно, что английский алфавит из страниц заканчивается начинается русский, причем он переносится вниз на одну строку, и видно его только когда курсором выделяешь. Так вот хотелось сделать так чтобы было две строки меню, чтоб алфавиты (страницы) разделить.

    http://www.mediafire.com/imgbnc.php/f3cdd94a950582ac2abe8f954ef4d15ca2e2c30ff447acaabae13d88c93288726g.jpg

  • Tod   28.07.2011

    max, если в шаблоне меню выводится через функцию wp_list_pages, то вы никак не разделите его на 2 части, оно будет отображаться в строку. Я предлагаю создать 2 разных меню — внимательно нужно посмотреть что и как делается по указанной мною ссылке выше. После этого 2 эти меню добавляются в шаблон вместо функции wp_list_pages (по идее где-то в header.php она). Ну и последний штрих — оформление этого всего через стили и как нужно (выравнивание и т.п.). Понимаю, что для новичка это сложная задача, но я могу лишь подсказать алгоритм действий, реализовывать придется самому.

  • max   28.07.2011

    конечно самому, спасибо. буду пробовать

  • Александр   28.07.2011

    Здравствуйте!
    Над задачей я уже бьюсь долго, и хотя чувствую, что решение должно быть простым — сам его найти никак не могу. Сайт посвящен картинкам. Допустим, у меня есть страница «природа», на которой я размещаю первые 12 картинок (выбрал это количество из удобства) и хочу, чтобы внизу страницы было продолжение, допустим, такого вида — «|1, 2, 3, 4…..72|» где на каждой странице были бы картинки с природой. С галереей я уже разобрался использовав плагин, но я никак не могу понять как организовать все эти страницы. Что я пробовал: создавал страницу «природа», размещал картинки, создавал страницу «1» и указывал в атрибутах родительской страницу «природа». В итоге на странице «природа» ничего не показывается. Конечно, можно просто разместить следующую страницу ссылкой, но ведь это не то и удобной навигации не будет. Что я упустил? Подскажите пожалуйста.

  • Tod   30.07.2011

    Александр, если бы это конечно был фотоблог, тогда я бы создал категорию «Природа» и добавлял бы туда записи, при это разбиение на страницы происходило бы с помощью плагина WP-PageNavi или подобного ему.
    Если же у вас галерея изображений, то тут (как я представляю это себе) все зависит от плагина, то есть нужно найти такой чтобы удовлетворял по всем функциональным возможностям, в том числе разбиение на страницы делал.

  • va114   17.08.2011

    Привет
    Вот такая проблема.. при добавлении страници она автоматом летит в меню сайта где мне предлагают выбрать родительскою, а я уже етого не хочю,мне нужна отдельная страница со своей инфой но что бы она не вылазила в меню/подменю
    покажу лучше на примере)
    мне нужно вот такое меню progylka.kiev.ua
    а у меня вот такое info-kiev.org(нету смысла дальше добалять, зайдите завидения-> интересные кафе)

  • Tod   19.08.2011

    va114, тут нужно разбираться более подробно что да как, через функцию сложно будет делать, можно попробовать возможности самой системы — про меню в wordpress была соответствующая статья, можно создавать несколько разных меню и выбирать какие пункты там будут.

  • Альфред   25.08.2011

    как разместить 2 рубрики на разных страницах wordpress?

  • Tod   27.08.2011

    Альфред, вопрос не совсем понятен, уточните что, где планируется размещать и в каком виде.

  • alex   27.09.2011

    привет! спасиб за статью. Но чёт у меня не получается исключать ссылки. помоги plz!
    каждой странице задал циферки. 1,2,3,4,5,6
    стоит
    5 страница не исключается!

    также отдельно добавляю

    <?php wp_list_pages('include=1,3&title_li=Menu’ ); ?>

    ПУСТОТА :(

Оставить комментарий

(предыдущая статья)

Блог Wordpress Inside поможет вам научиться работать в вордпресс, закрепить и расширить имеющиеся знания. Плагины и шаблоны, разные хаки и функции wp, оптимизация и безопасность системы – все это и намного больше вы сможете найти на страницах нашего проекта!

Если хотите быстро и оперативно получать последние новости и статьи, то рекомендуем подписаться на обновления блога:

Поиск:
Последние посты
Лучшее в категории

Облако тегов
Скажи свое мнение!

В чем основные плюсы Wordpress?

Посмотреть результаты

Загрузка ... Загрузка ...
Друзья проекта
Последние новости