Нужна помощь с меню Wordpress

Автор Тема: Нужна помощь с меню Wordpress  (Прочитано 957 раз)

Оффлайн прорабАвтор темы

  • Бизнес оценка: (0)
  • Постоялец
  • ***
  • СПАСИБО: 7
  • Сообщений: 110
  • Карма: 1

Оффлайн прорабАвтор темы

  • Постоялец
  • ***
Нужна помощь с меню Wordpress
« : 19-10-2012, 13:27:04 »
Здравствуйте уважаемые форумчяни, очень нужна ваша помощь, разобраться с меню Wordpress. Так вот на главной странице и на странице page в сайдбаре должны выводиться только родительские категорий:

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

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

 Категория1
 Подкатегория1.1
 Подкатегория1.2
 Подкатегория1.3

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

 И еще когда мы открываем любой пост, то на странице single должно быть такое же меню что и в архиве.

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

 <?php if (is_home())
 {
 echo (wp_list_categories("orderby=name&title_li=&hierarchical=1&depth=1"));
 }
 ?>

 <?php
 if ( is_category() ) {
 $cur_category = get_term_by( 'slug', get_query_var('category_name'),
 'category');
 $categories = get_categories( array( 'parent' =>
 $cur_category->term_id ) );
 if (!$categories) $categories = get_categories( array( 'parent' =>
 $cur_category->parent ) );
 foreach ($categories as $category) {
 $res = '<ul><li><a href="'.get_category_link(
 $category->term_id ).'">';
 $res .= $category->cat_name;
 $res .= '</a></li></ul>';
 echo $res;
 }
 }
 if ( is_single() ) {
 $allowed_cats = array( '14', '15', '41', '42', '48', '10', '19', '22', '20', '23', '12', '13', '17', '45', '21' , '30', '35', '37', '40');
 $post_cat = wp_get_post_categories($GLOBALS['post']->ID);
 if ( count($post_cat) == 1 && in_array( $post_cat[0], $allowed_cats ) )
 {
 $cur_category = get_term_by( 'id', $post_cat[0], 'category');
 $categories = get_categories( array( 'parent' =>
 $cur_category->term_id ) );
 if (!$categories) $categories = get_categories( array( 'parent' =>
 $cur_category->parent ) );
 foreach ($categories as $category) {
 $res = '<ul><li><a href="'.get_category_link(
 $category->term_id ).'">';
 $res .= $category->cat_name;
 $res .= '</a></li></ul>';
 echo $res;
 }
 }
 }
 ?>


 

Похожие темы

  Тема / Автор Ответов Последний ответ
0 Ответов
818 Просмотров
Последний ответ 06-02-2013, 17:40:22
от vsfilm
0 Ответов
654 Просмотров
Последний ответ 06-02-2013, 18:44:58
от parmactep
2 Ответов
1403 Просмотров
Последний ответ 28-05-2013, 14:38:17
от ACKET
4 Ответов
1164 Просмотров
Последний ответ 31-10-2013, 08:52:08
от Ruson
2 Ответов
288 Просмотров
Последний ответ 05-11-2020, 21:51:23
от ДмитрийПетров