[Помогите] Можно ли поместить в разные категории разные сайдбары

Тема в разделе "Wordpress", создана пользователем itpeople, 20 дек 2009.

Статус темы:
Закрыта.
Модераторы: Sorcus
  1. itpeople

    itpeople

    Регистр.:
    6 дек 2007
    Сообщения:
    546
    Симпатии:
    62
    Есть сайт, например авто тематики, в нем 2 раздела БМВ и Мерседес.
    На главной странице сайта в боковой колонке одни блоки (тоесть в home.php инклудится sidebar1.php)
    На всех остальных страницах инклудится sidebar2.php
    Можно как-то сделать что-бы в категории БМВ подключался sidebar2.php, а в категории Мерседес sidebar3.php?
    Теоретически догадываюсь, что должно быть примерно так (в archives.php, single.php:(
    PHP:
    if cat=1
    <?php include (TEMPLATEPATH '/sidebar2.php'); ?>
    else
    if cat=2
    <?php include (TEMPLATEPATH '/sidebar3.php'); ?>
    else
    <?php include (TEMPLATEPATH '/sidebar1.php'); ?>
    endif
    Как правильно это прописать практически?
     
  2. BadMotherFucker

    BadMotherFucker Модератор (Core Team)

    Регистр.:
    13 ноя 2009
    Сообщения:
    786
    Симпатии:
    570
    PHP:
    <?php if (is_category('ID категории BMW')) : ?>
    <?php 
    include (TEMPLATEPATH '/sidebar2.php'); ?>
    <?php 
    elseif (is_category('ID категории Mercedes')) : ?>
    <?php 
    include (TEMPLATEPATH '/sidebar3.php'); ?>
    <?php 
    else : ?>
    <?php 
    include (TEMPLATEPATH '/sidebar1.php'); ?>
    <?php 
    endif; ?>
     
    itpeople нравится это.
  3. shrek2008

    shrek2008 Создатель

    Регистр.:
    1 мар 2008
    Сообщения:
    21
    Симпатии:
    3
    Widgets

    Можно шагнуть ЧУТЬ дальше, сделать 1 сайдбар, но настроить виджеты и в виджетах прописать в какую категорию что именно выводить
    http://codex.wordpress.org/Widgets_API
    Это однозначно дольше, но изучив виджеты и написав парочку с нуля Вы сделаете огромный шаг в сторону познания глубин ВордПресса.
     
  4. boomyjee

    boomyjee Создатель

    Регистр.:
    18 фев 2007
    Сообщения:
    20
    Симпатии:
    0
    я за виджеты
     
  5. Деймос

    Деймос

    Регистр.:
    29 ноя 2008
    Сообщения:
    228
    Симпатии:
    53
    Читаем эту статью:
    http://www.wp-info.ru/uslovnye-tegi-wordpress/
    Там все написано, пользуемся is_category.
    Будут вопросы, задавайте!
     
    itpeople нравится это.
  6. itpeople

    itpeople

    Регистр.:
    6 дек 2007
    Сообщения:
    546
    Симпатии:
    62
    заново напишу свое сообщение, этот метод работает только в конкретной категории и только.
    как сделать, что-бы определенный сайдбар отображался еще и во всех подкатегориях и постах только из этих категорий?
     
  7. Tushkan

    Tushkan

    Регистр.:
    9 апр 2007
    Сообщения:
    208
    Симпатии:
    61
    Хм... попробуйте создать отдельные файлы шаблонов для каждой подкатегории... рутинно конечно, но что поделаешь...
    у Соньки это хорошо расписано и про иеархию файлов шаблона..
    http://www.sonika.ru/blog/wordpress/template-hierarchy.htm
    А с записями, возможно написать php вставку в single.php определяющую к какой категории относится данная запись, и уже по ней выдавать сайдбар...

    ------
    блин... цапнул глазами только последние посты, грешен...
    вам BadMotherFucker, уже всё расписал, должно работать...
     
  8. itpeople

    itpeople

    Регистр.:
    6 дек 2007
    Сообщения:
    546
    Симпатии:
    62
    Да так и есть, просто как это вывести.

    Я могу прописать так

    <?php if (is_category('перечислить все категори')) : ?>

    Просто у меня около 50-и категорий, может есть что проще для реализации.

    Тоже самое и с одиночными записями - <?php if (in_category('перечислить все категори')) : ?>

    Но опять же нужно перечислять все категории для каждого условия
     
Статус темы:
Закрыта.