Вывод количества подразделов фотоальбома

Материал из Umicms

Перейти к: навигация, поиск

Задача

Необходимо в описании раздела фотоальбома вывести количество подразделов.

Решение

Воспользуемся кастомным макросом:

		public function phtShowSubAlbumsCount($pid = 0) {
			// Если id родительского альбома не указан, то выход
			if(!$pid) {
				return false;
			}
 
			// Получаем id типа данных "Фотоальбом"
			$hierarchyTypes = umiHierarchyTypesCollection::getInstance();
			$hierarchyTypeId = $hierarchyTypes->getTypeByName('photoalbum', 'album')->getId();
 
			// Считаем количество дочерних объектов типа "Фотоальбом"
			// Скрытые и неактивные не считаем
			$hierarchy = umiHierarchy::getInstance();
			$childsCount = $hierarchy->getChildsCount(120, true, true, 1, $hierarchyTypeId);
 
			if($childsCount){
				return $childsCount;
			} else {
				return false;
			}
		}

Далее, в шаблоне Фотогалереи используем такую строчку:

%custom phtShowSubAlbumsCount(%pid%)%
Личные инструменты