I have put a category list from news module into pages module and it works. I have also done that is document not belongs to category, it is not shown.
This works well if we have only this structeure :
Category 1 ==> Sub Category 1
Bur if we have this structure :
Category 1 ==> Sub Category 1 ==> Sub Category
It does not show a sub category of sub category so a document can't be seen (to be see must put direct link)
Can someone llok at the code to see where is errors. Thanks
This is code of function that shows category in pnuser.php
Code
$rootcat = CategoryUtil::getCategoryByID($catregistry[$property]);
if (!empty($rootcat)) {
$rootcat['path'] .= '/';
// Get all categories in this category property
$catcount = _countcategories($rootcat, $property, $catregistry, $uid);
$rootcat['pages_articlecount'] = $catcount['category']['pages_articlecount'];
$rootcat['pages_totalarticlecount'] = $catcount['category']['pages_totalarticlecount'];
$rootcat['pages_yourarticlecount'] = $catcount['category']['pages_yourarticlecount'];
$rootcat['subcategories'] = $catcount['subcategories'];
// Store data per property for listing in the overview
$propertiesdata[] = array('name' => $property,
'category' => $rootcat);
}
}
}
if (!empty($rootcat)) {
$rootcat['path'] .= '/';
// Get all categories in this category property
$catcount = _countcategories($rootcat, $property, $catregistry, $uid);
$rootcat['pages_articlecount'] = $catcount['category']['pages_articlecount'];
$rootcat['pages_totalarticlecount'] = $catcount['category']['pages_totalarticlecount'];
$rootcat['pages_yourarticlecount'] = $catcount['category']['pages_yourarticlecount'];
$rootcat['subcategories'] = $catcount['subcategories'];
// Store data per property for listing in the overview
$propertiesdata[] = array('name' => $property,
'category' => $rootcat);
}
}
}
And this is code of template page that shows categories
Code
<!--[* Second level category display *]-->
<!--[if !empty($category.subcategories)]-->
<ul >
<!--[foreach from=$category.subcategories item='subcat']-->
<!--[array_field_isset assign='categoryname' array=$subcat.category.display_name field=$language returnValue=1]-->
<!--[if $categoryname eq '']--><!--[assign var='categoryname' value=$subcat.category.name]--><!--[/if]-->
<!--[array_field_isset assign='categorydesc' array=$subcat.category.display_desc field=$language returnValue=1]-->
<!--[assign var='categoryid' value=$subcat.category.id]-->
etc..
<!--[* Third level category display *]-->
<!--[if !empty($property.category.subcategories.subcategories.subcategories.category)]-->
<ul >
<!--[foreach from=property.category.subcategories.subcategories.subcategories.category item='subcat']-->
<!--[array_field_isset assign='categoryname' array=$subcat.category.display_name field=$language returnValue=1]-->
<!--[if $categoryname eq '']--><!--[assign var='categoryname' value=$subcat.category.name]--><!--[/if]-->
<!--[array_field_isset assign='categorydesc' array=$subcat.category.display_desc field=$language returnValue=1]-->
<!--[assign var='categoryid' value=$subcat.category.id]-->
<!--[if !empty($category.subcategories)]-->
<ul >
<!--[foreach from=$category.subcategories item='subcat']-->
<!--[array_field_isset assign='categoryname' array=$subcat.category.display_name field=$language returnValue=1]-->
<!--[if $categoryname eq '']--><!--[assign var='categoryname' value=$subcat.category.name]--><!--[/if]-->
<!--[array_field_isset assign='categorydesc' array=$subcat.category.display_desc field=$language returnValue=1]-->
<!--[assign var='categoryid' value=$subcat.category.id]-->
etc..
<!--[* Third level category display *]-->
<!--[if !empty($property.category.subcategories.subcategories.subcategories.category)]-->
<ul >
<!--[foreach from=property.category.subcategories.subcategories.subcategories.category item='subcat']-->
<!--[array_field_isset assign='categoryname' array=$subcat.category.display_name field=$language returnValue=1]-->
<!--[if $categoryname eq '']--><!--[assign var='categoryname' value=$subcat.category.name]--><!--[/if]-->
<!--[array_field_isset assign='categorydesc' array=$subcat.category.display_desc field=$language returnValue=1]-->
<!--[assign var='categoryid' value=$subcat.category.id]-->
actually i have on my template page this :
*Category 1
* Sub Category 1
And i want to have this :
*Category 1
* Sub Category 1
*Sub Category1
With pndebug i got this :
Code
<!--[$category]-->category name ==>Category
subcategories.category.name ==> Subcategory of Category
subcategories.subcategories.category.name ==>Sub category of Subcategory of Category
subcategories.category.name ==> Subcategory of Category
subcategories.subcategories.category.name ==>Sub category of Subcategory of Category
thanks
edited by: nunizgb, datetimebrief
