Фев
26
319

Рубрики и категории wordpress, функция wp_list_categories

категории wordpressДля каждого поста и записи wordpress пользователь может задавать одну или несколько рубрик (категорий). Эта возможность позволяет сгруппировать близкие по смыслу записи и предоставить возможность посетителям читать и просматривать только те рубрики, которые им нравятся. Например, когда я создавай свой основной блог Tod’s Blog, то собирался писать обо всех нюансах интернета — начиная с дизайна и заканчивая программированием. Допустим, человек пришел из поисковика на статью про wordpress и захотел бы почитать про систему еще больше – ему пришлось бы рыться в архивах, повторно использовать поиск либо просматривать все посты подряд. Разумеется, этого всего можно было избежать, зайдя в специальную категорию под названием wordpress. Или, например, для те, кто увлекается лишь дизайном, могла быть интересна рубрика wordpress  темы для блога.

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

Для управления категориями wordpress существует несколько механизмов. Во-первых, создание и редактирование всех категорий производится в разделе «Записи» пункт «Рубрики».

рубрики wordpress

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

Справа на странице Рубрики отображаются все категории wordpress, с возможностью из редактирования либо удаления. Чтобы произвести действия достаточно подвести курсор мышки на имя той или иной категории, после чего увидите небольшое всплывающее меню.

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

категории wordpress

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

Кроме того редактировать категории для постов в блоге можно через их список в меню Записи – Изменить. Там при наведении на ту или иную публикацию вы увидите ссылку «Быстрое редактирование». Нажимаем по ней и видим форму для правки:

рубрики wordpress

Здесь можно изменить и категории, и теги, и всю дополнительную информацию по статье. Вещь очень удобная + работает без перезагрузки страницы.

Функция wp_list_categories для категории wordpress

По традиции рассматриваю не только вопрос работы с теми или иными элементами системы, но и привожу специальные функции для шаблонов. Точно также как я рассказывал про wordpress страницы. Итак, для вывода списка категорий со ссылками на них используется wp_list_categories. Она имеет целый ряд аргументов:

  • show_option_all – отображает ссылка на все категории, если в качестве стиля отображения выбрал список.
  • orderby – сортировка для категорий по ID, имени (name), ярлыку (slug), количеству постов (count).
  • order – порядок сортировки (ASC – по увеличению, DESC – по уменьшению).
  • show_last_updated – показывать дату последнего обновления.
  • style – стиль оформления: список (list), разделение через <br> (none).
  • show_count – отображать количество постов в категории.
  • hide_empty – скрывать пустые рубрики, где нет записей.
  • use_desc_for_title – использовать описание для атрибута title в ссылке.
  • child_of – вывод только категорий для заданной родительской рубрики.
  • feed – отображение ссылку на wordpress rss фид для категорий.
  • feed_type – тип фида.
  • feed_image – картинка для значка rss.
  • exclude – исключение категорий из списка, при этом параметр child_of автоматически отключается.
  • exclude_tree – исключения целой ветки рубрик.
  • include – обратный параметр, который включает только указанные категории wordpress в список.
  • hierarchical – параметр для отображения подкатегорий.
  • title_li – заголовок списка рубрик.
  • number – количество категорий для отображения (если их слишком много).
  • echo – выводит рубрики, по умолчанию равен True.
  • depth – указывает количество уровней для подкатегорий для вывода.

Напоследок приведу ряд примеров использования wp_list_categories. Во-первых, вариант из шапки этого блога.

<?php wp_list_categories('hide_empty=1&exclude=1&title_li=&orderby=count&order=desc&use_desc_for_title=0'); ?>

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

Ну и еще парочку простых ситуаций. Использование исключений и включений категорий.

<ul><?php wp_list_categories('orderby=name&include=3,5,9,16'); ?></ul>
<ul><?php wp_list_categories('orderby=name&show_count=1&exclude=10'); ?></ul>

Отображения только подрубрик выбранной категории

<ul> 
<?php wp_list_categories('orderby=id&show_count=1&use_desc_for_title=0&child_of=8'); ?>
</ul>

Показ категорий с RSS ссылками

<ul>
<?php wp_list_categories('orderby=name&show_count=1&feed=RSS'); ?>
</ul>

Можно использовать картинку для фидов rss

<ul>
<?php wp_list_categories('orderby=name&show_count=1&feed_image=/images/rss.gif'); ?>
</ul>

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

Update: Также вам может пригодится небольшой хак чтобы убрать ненужный текст из атрибута title для ссылок категорий. В wordpress по умолчанию определяется текст title что-то вроде «просмотреть все записи в рубрике ….», можно вместо этого просто оставить название рубрики — читаем статью по ссылке выше.

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

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

комментариев 319 к статье “Рубрики и категории wordpress, функция wp_list_categories”

  • Shaitanos   30.06.2011

    Вопрос в следующем. У меня по умолчанию в шаблоне рубрик в мета тегах прописаны noindex и nofollow, исходя из чего страницы рубрик не индексируются поисковиками. Каким способом можно удалить эти теги? Я хочу что бы мои рубрики попали в индекс.

  • Tod   01.07.2011

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

  • Shaitanos   01.07.2011

    Нашел эту опцию в настройках плагина All in one SEO. Большое спасибо.

  • Ольга Москалец   09.07.2011

    Уважаемый автор! Замучала гугл вопросом — не работает вывод рубрик. Так ничего и не нашла. После обновлениия WP при нажатие на рубрику в сайдбаре — рубрика не выводится. Может подскажите? Пробовала ставить плагины — не помогает.
    Вот код из файла сайдбара

    <form method="get" id="searchform" action="/»>

    Categories

  • Yellow   09.07.2011

    У меня проблемс не работают рубрики, когда на нее жмякаешь выдает сообщение — Запрашиваемая Вами страница не найдена на сервере. Попробуйте начать поиск с первой страницы.
    Не подскажешь в чем проблема?

  • Yellow   09.07.2011

    ищо вопрос почему счетчики яндекса и лайфинет не отображются на страницаж где написаны статьи, а только на главной?

  • Tod   10.07.2011

    Yellow, по первому вопросу, возможно, проблема с htaccess, обычно в разделе админки «Постоянные ссылки» задается определенная структура, которую нужно вручную добавить в htaccess файл (если он не доступен для записи). Часто именно с этим возникали трудности.
    По второму вопросу ответов может быть несколько — посмотрите в шаблоне футера нет ли там соответствующий условий. Никаких обычных причин для такого поведения счетчиков нет, то есть явно подправлен код вывода для них.

  • Tod   10.07.2011

    Ольга, код не отобразился, зашел на сайте, вроде все рубрики работают. Сами разделы выводятся либо через шаблон (коды примеров есть в статье) либо через виджеты.

  • Yellow   10.07.2011

    Не особо понял но все равно спасибо=)

  • Ольга Москалец   13.07.2011

    Tod, не работают! Просто выводится первая страница блога при нажатии на любую рубрику.
    И со страницы карты сайта тоже рубрики открывают просто первую страницу блога…

  • XrumiK   14.07.2011

    Как сделать рубрики выпадающими, без изменения дизайна? Спасибо!

  • Tod   14.07.2011

    Ольга, симптомы очень напоминают проблему с неработающими Permalinks и Simple Tags в новых версиях wordpress. В статье есть решение, но если проблема не в этом, тогда даже не знаю чем помочь, возможно что-то не так с htaccess.

  • Ольга Москалец   14.07.2011

    Tod, спасибо! Если не получится, буду ждать новых версий WP.

  • Tod   14.07.2011

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

  • Наталья   15.07.2011

    Здравствуйте! Не могли бы вы уточнить, какой код нужно добавить, чтобы в выпадающем меню рубрики показывались не в алфавитном порядке, а как мне нужно по смыслу?

  • Tod   18.07.2011

    Наталья, к сожалению «по смыслу» стандартными методами создать список категорий не получится, но можно сделать из него wordpress меню, а там уже располагайте разделы в какой угодно очередности.

  • Наталья   19.07.2011

    Уже справилась. Поставила плагины Dropdown Menu Widget и Category Order. Но все равно спасибо за внимание!

  • Дмитрий   20.07.2011

    Здравствуйте, нужна помощь. Какая-то неурядица с рубриками в wordpress. Подключил шапку сайта на jquery. Через каждый 3 секунды шапка меняется, работает без проблем на всех страницах сайта. НО, стоит мне пощелкать по ссылкам из правого сайдбара, выбирая нужную рубрику — шапка сайта исчезает. Рубрике присвоен индекс «category», после чего идет само ее название. В общем шапка не работает ни в одной категории сайта. В чем причина? Вот посмотрите скриншот, если кто-то все же не понял о чем речь…. скрин #1 : http://myface.uz/files/2011/07/5791409527829a48cef7.jpg ||||| скрин: #2 : http://myface.uz/files/2011/07/746f386f1aa0fe902421.jpg

  • Сергей   21.07.2011

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

  • Tod   22.07.2011

    Сергей, в том виде, в котором вы это описали вряд ли что-то получится, т.к. не может страница и категория указывать на один URL. Суть задачи может быть решена с помощью добавления описания в категорию wordpress — так, думаю, было бы сделать правильнее. Хотя, если так подумать, то можно реализовать и ваш вариант, но для этого нужно либо отыскать специфических плагин либо разбираться с файлами шаблонов, добавляя соответствующие условия и php код.

  • Tod   22.07.2011

    Дмитрий, видимо ошибка где-то в jquery или, возможно, вы просто не подключили ее для страниц категорий. Посмотрите файл archive.php который отвечает за категории — может там что-то найдете.

  • Славик   04.08.2011

    у меня меню выводитса по такому шаблону » wp_list_categories(‘depth=0&title_li=&exclude=’); «, вроде все норм но, изза того что у меня выпадающее меню, мешают пареметры «title» в ссылках, можно ли их както убрать? ну или обнулить чтобы они не выводились. Заранее спосибо =)

  • Славик   04.08.2011

    уже разобралса, решыл проблему так:
    »
    $replace_cat = wp_list_categories(‘depth=0&title_li=&exclude=&echo=0’);
    $replace_cat_p = str_replace («title=», «», $replace_cat);
    echo $replace_cat_p;
    »
    — тоесть просто вырезал все параметры тайтл, можна конечно вырезать ы сам текст, но ето уже осой роли не играет, он просто проигнорируетса браузером.

  • lsdxa   23.08.2011

    постоянно пропадает форма поиска из шаблона. чудеса какие-то. изза чего такое может происходить?

  • Tod   25.08.2011

    lsdxa, если форма не отображается, значит ее нет в шаблоне, может не в том файле шаблона, может еще что-то. Я кстати себе ставил пользовательский поиск Google — немного больше нравится стандартного.

  • aima   03.09.2011

    Пожалуйста помогите! Делаю сайт пока на денвере. Вопрос такой — на главной необходимо вывести в две колонки список всех категорий\рубрик с описанием категории и с рисунком к каждой категории.

  • Tod   05.09.2011

    aima, окончательный вариант кода не подскажу, здесь нужно постепенно шаг за шагом сделать то, что вам нужно — намешано действительно много всяких мелких задач. Функция wp_list_categories выводит категории, но описание насколько я понимаю доступно только при вызове в цикле loop. Во-первых, посмотрите про функцию описаний категорий category_description() потом почитать про вывод постов из категории через цикл. Во втором случае нужно позаимствовать принцип отображения, но использовать, конечно, функцию для категорий — вывод описания.
    В любом случае непростая задача, возможно есть плагин, который бы ее упростил.

  • Евгений   06.09.2011

    а как вывести такую конструкцию?

    Категория 1
    Пост 1 из Категории 1
    Пост 2 из Категории 1
    Пост 3 из Категории 1
    Категория 2
    Пост 1 из Категории 2
    Пост 2 из Категории 2
    Пост 3 из Категории 2

  • Tod   06.09.2011

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

  • Mag   25.09.2011

    Здравствуйте, дан сайт:
    anton.kopot.net
    Созданы рубрики…каким способом можно вывести рубрики наверх ? рядом с кнопкой Home ?
    В предыдущей теме была такая же проблема…

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


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

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

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

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

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

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

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