Форум русской поддержки Joomla!® CMS
08.12.2016, 04:10:21 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Список всех категорий

 (Прочитано 163 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Wertos
Завсегдатай
*****

Репутация: +21/-0
Offline Offline

Пол: Мужской
Сообщений: 543


« : 27.02.2016, 12:52:37 »

Есть ссылка в меню на список всех категорий в одной родительской. Смысл в том, что если включить показ кол\ва материалов, то запрос отрабатывает очень долго и если их показ отключить то всё меняется в лучшую сторону ! НО дело всё в том, что их не отключить. Нет их показ конечно можно отключить, в настройках пункта меню или настройках компонента и это создаст видимость отключения... В запросе, в файле
/libraries/legacy/categories/categories.php в условии
Код
if ($this->_options['countItems'] == 1)
всегда true !

Код
var_dump($this->_options);

Код:
array (size=6)
  'countItems' => boolean true
  'table' => string '#__content' (length=10)
  'extension' => string 'com_content' (length=11)
  'access' => string 'true' (length=4)
  'published' => int 1
  'currentlang' => int 0
Записан
Wertos
Завсегдатай
*****

Репутация: +21/-0
Offline Offline

Пол: Мужской
Сообщений: 543


« Ответ #1 : 27.02.2016, 13:03:50 »

Продолжу....
Вот эта строка
Код
$options['countItems'] = $params->get('show_cat_num_articles_cat', 1) || !$params->get('show_empty_categories_cat', 0);
в файле /component/com_content/models/categories.php
даёт true
Тогда я понять не могу, как нужно выставить в настройках, чтобы
Код
$options['countItems'] = false;
Записан
voland
Профи
********

Репутация: +488/-86
Offline Offline

Пол: Мужской
Сообщений: 8720


любит наш народ всякое гавно...


« Ответ #2 : 27.02.2016, 13:06:41 »

Надо чтоб оба параметра были 0
Записан
Wertos
Завсегдатай
*****

Репутация: +21/-0
Offline Offline

Пол: Мужской
Сообщений: 543


« Ответ #3 : 27.02.2016, 13:08:35 »

Код
var_dump($options['countItems']);
var_dump($params->get('show_empty_categories_cat', 0));
var_dump($params->get('show_cat_num_articles_cat', 1));
Код:
boolean true
int 0
string '0' (length=1)
Но как такое может быть, один из них строка ! И строка всегда true будет при наличии любого значения !
Записан
voland
Профи
********

Репутация: +488/-86
Offline Offline

Пол: Мужской
Сообщений: 8720


любит наш народ всякое гавно...


« Ответ #4 : 27.02.2016, 13:09:57 »

Разве?
Выводить последние два без значения по умолчанию
Записан
voland
Профи
********

Репутация: +488/-86
Offline Offline

Пол: Мужской
Сообщений: 8720


любит наш народ всякое гавно...


« Ответ #5 : 27.02.2016, 13:10:51 »

Тогда это похоже на баг
Записан
Wertos
Завсегдатай
*****

Репутация: +21/-0
Offline Offline

Пол: Мужской
Сообщений: 543


« Ответ #6 : 27.02.2016, 13:11:59 »

Может у кого есть J! 3.4.8 для тестов... кто проверит мои выводы...?
Записан
Wertos
Завсегдатай
*****

Репутация: +21/-0
Offline Offline

Пол: Мужской
Сообщений: 543


« Ответ #7 : 27.02.2016, 13:21:24 »

Но даже если сделать привести переменные к типу int, то условие будет false только при

Код:
boolean false
int 1 - $params->get('show_cat_num_articles_cat', 1)
int 0 - $params->get('show_empty_categories_cat', 0)

Я уже даже не понимаю, это мой бред или реально ошибка...
Записан
Wertos
Завсегдатай
*****

Репутация: +21/-0
Offline Offline

Пол: Мужской
Сообщений: 543


« Ответ #8 : 27.02.2016, 13:22:20 »

Но даже если сделать привести переменные к типу int, то условие будет false только при

Код:
boolean false
int 1 - $params->get('show_cat_num_articles_cat', 1)
int 0 - $params->get('show_empty_categories_cat', 0)

Я уже даже не понимаю, это мой бред или реально ошибка...
т.е. в настройках надо включить показ количества материалов и скрыть пустые категории...
Записан
voland
Профи
********

Репутация: +488/-86
Offline Offline

Пол: Мужской
Сообщений: 8720


любит наш народ всякое гавно...


« Ответ #9 : 27.02.2016, 13:27:48 »

Нет. Судя по коду выше там или. Значит оба 0
Записан
Wertos
Завсегдатай
*****

Репутация: +21/-0
Offline Offline

Пол: Мужской
Сообщений: 543


« Ответ #10 : 27.02.2016, 13:30:13 »

Вот при таких настройках условие false
Пустые категории - показывать
Кол-во материалов в категории - скрыть
Тогда обе переменные тип string
И это в настройке пункта меню, через настройки материалов почему-то не работает.
Если включить в настройках пункта "по умолчанию", то переменные становятся тип int и не меняются при изменении настроек в настройках материалов
« Последнее редактирование: 27.02.2016, 13:33:31 от Wertos » Записан
robert
Профи
********

Репутация: +344/-11
Offline Offline

Пол: Мужской
Сообщений: 3590


« Ответ #11 : 27.02.2016, 14:04:00 »

Но как такое может быть, один из них строка ! И строка всегда true будет при наличии любого значения !
Код
var_dump($test=0 || '0');
=bool(false)
Записан
Wertos
Завсегдатай
*****

Репутация: +21/-0
Offline Offline

Пол: Мужской
Сообщений: 543


« Ответ #12 : 27.02.2016, 14:07:49 »

Код
var_dump($test=0 || '0');
=bool(false)
Да да... я дошёл до этого... Но почему-сделано у них странно, эти настройки только через пункт меню можно настроить...
Записан
Wertos
Завсегдатай
*****

Репутация: +21/-0
Offline Offline

Пол: Мужской
Сообщений: 543


« Ответ #13 : 27.02.2016, 14:12:53 »

А вот например для блога категории наоборот ! Данные настройки работаю только через настройки компонента, а через меню не работают !
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet