Стилизовать single.php динамически по его родительской категории в Wordpress - PullRequest
0 голосов
/ 26 января 2011

Я занимаюсь разработкой сайта с использованием Wordpress, который использует Категории для основных разделов с подкатегориями.Каждый основной раздел оформлен по-своему, поэтому я использую слаг для родительской категории для каждой подкатегории, чтобы добавить идентификатор в тег body.Это работает нормально и позволяет стилизовать все страницы подкатегорий так же, как их родительские категории.

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

В качестве примера, структура, которую я имею, это News как родительская категория сПресс-релизы и последние новости в качестве подкатегорий.

Помощь очень ценится!

Ответы [ 2 ]

0 голосов
/ 26 января 2011

Спасибо за быстрые ответы.

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

Я добавил эту функцию:

function get_cat_slug($cat_id) {
    $cat_id = (int) $cat_id;
    $category = &get_category($cat_id);
    return $category->slug;
}

Затем использовал этот код для получения родительского идентификатора и вывода слага:

$getcategory = get_the_category() ;
$parentcatid = $getcategory[0]->category_parent;
echo get_cat_slug($parentcatid);

Вот и все.

0 голосов
/ 26 января 2011

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

http://codex.wordpress.org/Function_Reference/get_the_category

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...