Немного о таксономии и тегах в WordPress

[ ←Вернуться к стандартному виду ]

Печатная версия

Нашла несколько примеров практического использования тегов в WordPress и решила поделиться с широкой общественностью.

Теоретическую часть я не осилю, так что сразу рекомендую читать у Максима отличную статью по теме «таксономия в WordPress».

Знаете, за что меня не любила школьная учительница математики? На то было 2 причины.

Первая: с 7 по 10 классы у меня была такаяcnfy же красивая кофта с блестками made in Turkey, как у нее, поэтому она ее не могла носить и сильно переживала по этому поводу — женские заморочки, мужчины не поймут:)

Вторая: когда начиналась новая тема, все втыкали и аккуратно списывали замысловатые каракули с доски в тетрадку. Меня же всегда в первую очередь сильно волновали вопросы «А зачем нам тригонометрические функции? А для чего логарифмы в повседневной жизни? А где и как пригодятся знания о том, что функция sin x обращается в нуль при x = πn?», которые учительнице сильно не нравились.

Поэтому перейдем сразу к практике.

Как можно вывести записи, помеченным тегом или набором определенных тегов?

Тут нам поможет новый параметр tag в query_posts (для юзанья в wordpress 2.2.1 и выше).

Выведет посты с тегом «рекомендуем»

<code class="php">query_posts('tag=рекомендуем');</code>

Выведет посты, помеченные тегами «рекомендуем» и/или «туц»

<code class="php">query_posts('tag=рекомендуем,туц');</code>

Выведет посты, которые помечены 3 тегами одновременно: «рекомендуем», «туц» и «wordpress»

<code class="php">query_posts('tag=рекомендуем+туц+wordpress');</code>

Вместо русских названий тегов лучше писать их урлы (slug), т.е. вместо конструкции из двухсловного тега вида 'tag=рекомендуем купить' использовать slug этого тега: 'tag=rekomenduem-kupit'

Пример:

Рекомендуем:

<code class="php">&lt;?php query_posts('tag=rekomenduem'); ?&gt;
&lt;?php if (have_posts()) : while (have_posts()) : the_post(); ?&gt;</code>

… дальше все стандартно

Где это может понадобится?

Например, у нас сайт с каталогом софта, и мы можем оперативно выводить в блоке «Рекомендуем купить» записи с описанием софта, на который хотим обратить внимание посетителей сайта. А возможно это горящие предложения, которые после определенной даты/момента становятся неактуальными, тогда нечего им торчать на главной странице :)

В чем удобство?

шспользуя query_posts('tag=Рекомендуем'); для вывода таких записей мы во-первых сохраняем урл записи в первозданном виде (я, например, пользуюсь шаблоном ЧПУ %category%/%postname%.htm), а во-вторых имеем возможность удалять/добавлять тег «Рекомендуем» постам и страницам оптом из админки — с помощью плагина Simple Tags (wp 2.3) или Simple Tagging (wp 2.2.3 и ниже).

Причем, заметьте, query_posts('tag=rekomenduem'); выводит и посты (Posts) и страницы (Pages), помеченные тегом «Рекомендуем».

ш вот еще: чтобы вывести все записи с опред. тегом/набором тегов на одной странице, нужно дописать дополнительный параметр в query_post posts_per_page

<code class="php">&lt;?php query_posts('tag=rekomenduem&amp;posts_per_page=-1'); ?&gt;</code>

Если нужна постраничная навигация при query_posts, то воспользуйтесь кодом отсюда.

Архив по тегам

WordPress позволяет выводит архивы, группируя посты по тегам по тому же принципу:

  • http://your-blog-uri/?tag=rekomenduem,wordpress-plugins
    выведет архив постов, помеченных тегами rekomenduem и/или wordpress-plugins
  • http://your-blog-uri/?tag=rekomenduem+wordpress-plugins
    выведет архив постов, помеченных одновременно rekomenduem и wordpress-plugins

При использовании ЧПУ: http://your-blog-uri/tag/rekomenduem+wordpress-plugins

RSS тегов

http://your-blog-uri/?tag=rekomenduem+wordpress-plugins&feed=rss
Так можно подписаться на RSS постов, помеченных определенными метками (в данном примере метками «Рекомендуем» и «wordpress-plugins»).

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

Тут нам поможет плагин TDO Tag Fixes (только для wp 2.3 и выше).

Установка простая: скачать, распаковать, залить папку tdo-tag-fixes в папку с плагинами, активировать. Управления из админки нет, некоторые настройки можно произвести непосредственно в коде самого плагина.

С помощью этого плагина возможно выводить посты определенной категории, помеченные одним или несколькими тегами. Возможности выводить записи из нескольких категорий, помеченные опред. тегом/тегами пока НЕТ.

Если используется ЧПУ, то добавьте в конец урла ?tdo_tag=a_tag, пример:

<code>http://your-blog-uri/category/mycategory?tdo_tag=recomenduem</code>

Без ЧПУ — &tdo_tag=a_tag, где a_tag это урл (слаг) тега, а не его имя:

http://your-blog-uri/?cat=35&tdo_tag=rekomenduem

Здесь также можно использовать "," и "+" для соединения тегов, например:

<code>http://your-blog-uri/?cat=35&amp;tdo_tag=rekomenduem+internet
http://your-blog-uri/category/mycategory?tdo_tag=rekomenduem,internet</code>

UPD 08.04.2008  Выводим посты категории mycategory с тегами recomenduem и/или wordpress и сортируем их по алфавиту:

<code>http://your-blog-uri/category/mycategory?tdo_tag=recomenduem,wordpress&amp;orderby=title&amp;order=asc</code>

Облако тегов (стандартный wp_tag_cloud или стандартный виджет «Облако меток») с включенным плагином TDO Tag Fixes приобретает некоторые способности: при просмотре категории отображаются только теги, связанные с этой категорией. Т.е., если вы находитесь в определенной категории и кликните по тегу, то выведутся все записи этой категории с данным тегом.
Впрочем, если больше нравится стандартное облако меток, то можно и отключить описанную выше фичу, для этого в строке 25 плагина сменить true на false

<code>$tdotf_fix_tag_cloud_auto = true;</code>

ш rss тоже работает. Выводим rss для постов с тегами «рекомендуем» и/или «интернет» из категории mycategory:

<code>http://your-blog-uri/category/mycategory?tdo_tag=rekomenduem,internet&amp;feed=rss</code>

Статья по теме: Taxonomy Intersections and Unions (англ., автор boren.nu).


Комментариев: 11, оставить свой »

Страницы: [2] 1 » Показать все

  1. # 11 Отзывы (1) 17.01.2010 в 15:02

    Спасибо, за то что рассказали про установку плагина TDO Tag Fixes. А то мучался с ним.

Страницы: [2] 1 » Показать все

Написать комментарий


Ручная модерация комментов. Все саттелиты — в топку! Даже не сомневайтесь. Для вопросов о вордпресс не по теме поста есть два русскоязычных форума по wordpress.


Подписаться, не комментируя

[ ←Вернуться к стандартному виду ]

Печатная версия