Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB58.6890
BTC/USD0.0000
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 20.12.2010, 16:12   #1
serzkop
Ебланнед
 
Регистрация: 27.08.2009
Сообщений: 157
Бабло: $35455
Отправить сообщение для serzkop с помощью ICQ
По умолчанию Поправить скрипт помогите.

Есть директория статей, нужно убрать в child category 3 уровня (Home » Art & Entertainment » Online Gambling ») надпись: Subcategories:
* No categories
Само собой чтобы на 2 уровне она оставалась.

Что сделал:
Изменял "The number of child categories to show:" - ничего не дало
В самом плагине перепробовал все настройки, ничего не помогло.
__________________
serzkop вне форума  
Старый 20.12.2010, 19:50   #2
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,382
Бабло: $470735
По умолчанию

добавь условие:
если number_of_child_categories равно 0, тогда надпись Subcategories не показываем
это на уровне шаблонов надо делать
__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser
chesser вне форума  
Старый 20.12.2010, 20:25   #3
serzkop
Ебланнед
 
Регистрация: 27.08.2009
Сообщений: 157
Бабло: $35455
ТС -->
Отправить сообщение для serzkop с помощью ICQ
автор темы ТС По умолчанию

Цитата:
Сообщение от chesser Посмотреть сообщение
добавь условие:
если number_of_child_categories равно 0, тогда надпись Subcategories не показываем
это на уровне шаблонов надо делать
Вот здесь вроде закопано чудо, смотрю на код и понять не могу.
<?php if (get_categories()) { ?>
<h3>Subcategories:</h3>
<ul class="child-categories">
<?php wp_list_categories('show_count=1&child_of='.$cat.' &hide_empty=0&title_li='); ?>
</ul>
<?php } else { ?>
<?php
$ID = $wp_query->posts[0]->ID;
$postcat = get_the_category($ID);
$cat = $postcat[0]->cat_ID;
$parent = get_category($cat);
?>
<?php if ($parent->parent) { ?>
<ul class="child-categories">
<?php error_reporting(0); wp_list_categories ('show_count=1&child_of='.$parent->parent.'&exclude='.$cat.'&hide_empty=0&title_li=' ); ?>
</ul>

<?php } else {
} ?>
<?php } ?>
__________________
serzkop вне форума  
Старый 20.12.2010, 20:56   #4
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,382
Бабло: $470735
По умолчанию

принцип такой....
наша проблема: в некоторых случаях не нравится надпись Subcategories: bla-blabla
ищем код, который рисует эту надпись:
PHP код:
<?php if (get_categories()) { ?>
<h3>Subcategories:</h3>
<ul class="child-categories">
<?php wp_list_categories('show_count=1&child_of='.$cat.' &hide_empty=0&title_li='); ?>
</ul>
<?php } else { ?>
надпись рисуется в том случае, когда срабатывает if(get_categories())
значит функция get_categories() не всегда выдает нужное нам значение, изучаем ее описание и параметры: http://codex.wordpress.org/Function_...get_categories
- это установили причину проблемы
А решать двумя способами:
1) либо передать в эту функцию какой-то нужный параметр, который изменит выдаваемое ей значение - смотри описание и список параметров
2) либо поставить дополнительное условие в имеющийся if через логический оператор И, т.е. && будет примерно так:
<?php if (get_categories() && $condition) { ?>

я не особо знаток вп, но должно наверно быть что-то вроде:
PHP код:
<?php if(get_categories('child_of='.$cat)) { ?>
__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser
chesser вне форума