Вывод рубрик для записи через функцию the_category

Вывод рубрик для записи через функцию the_categoryПростая проблема имеющая простое решение, но когда сталкиваешься с ней в первый раз, то могут возникнуть трудности в ее решении. Вроде одна простая функция, но когда ее вставляешь, то на выходе получаешь не совсем то, что хотелось бы. Но решение, как всегда, имеется.

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

<?php the_category(' , ') ?>

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

| Рубрика: Контекст , Манимейкинг |

Хорошо, если это не так важно и пусть порядок рубрик разный.

Но если одна рубрика является подрубрикой другой?

Тогда надо, просто напросто, выводить подрубрику и вновь проблема становится решенной.

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

<?php the_category( $separator, $parents, $post_id ); ?>

В первоначальном варианте использовался только один параметр — разделитель между рубриками, осталось научиться пользоваться двумя другими.

— $separator — как я уже сказал, это разделитель между рубриками. В моем случае (смотрите выше) используется запятая.

— $parents — вот именно то, что нам требуется для правильного отображения рубрик в формате рубрика/подрубрика.

Тут два варианта решения:

single — выводит названия обеих рубрик, но при этом формирует одну единственную ссылку на подрубрику. Считаю этот вариант не лучшим.

— multiple- тут гораздо интереснее. Выводятся все необходимые рубрики и подрубрики wordpress в правильном порядке и каждая рубрика/подрубрика имеет свою собственную ссылку. И красиво и удобно.

Третий параметр трогать незачем, он отвечает за id-номер выводимой записи. Этот параметр лучше оставить под управлением wordpress.

Что получаем в итоге:

<?php the_category(' » ', 'multiple') ?>

А так это выглядит:

| Рубрика: Манимейкинг » Контекст |

И не забудьте, что записи необходимо публиковать в одной подрубрике. Если вы опубликуете новую статью и в подрубрике и в ее родительской рубрике, то wordpress выдаст вам вот такой сюрприз:

| Рубрика: Манимейкинг » Контекст » Манимейкинг |

Мало кому понравится любоваться повторяющимися рубриками, а они ведь еще и место занимают.

Применяйте и будьте счастливы)

О создании блогов и сайтов на Artemka.su

Автор старался. Скажи спасибо - оставь свой отзыв!

Узнавайте О Новых Статьях По Почте

Комментарии к записи "Вывод рубрик для записи через функцию the_category"

  • Максим

    А не подскажете, когда много в одной рубрике, под рубрик, как сделать, что бы они входили в одну родительскую рубрику, а не разбивало по кускам?

    Ответить
  • Дмитрий

    Вот блин, а я смотрю, что у меня за фигня выходит, оказывается записи надо «публиковать в одной подрубрике», а я их засовывал еще и в родительские :) Полчаса решал проблему, потом наткнулся на ваш сайтик и всё понял. ‘, ‘multiple’); ?> и правда работает :) Спасибо!!!

    Ответить

С нетерпением жду вашего отзыва

Хотите, чтобы на ваш комментарий обратили внимание?

XHTML: Вы можете использовать следующие теги(главное не увлекайтесь, ведь есть модерация): <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>