Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Remove (and 5 more) from categories widget block


Recommended Posts

  • Owner

The categories widget block will collapse the number of subcategories if there are more than 5 subcategories. This can be fixed by changing the code quite easily.

This is the code for the category widget block:

{{$catClass = '\IPS\cms\Categories' . \IPS\cms\Databases\Dispatcher::i()->databaseId;}}
{{$categories = $catClass::roots();}}
{{if !empty( $categories )}}
	<h3 class='ipsWidget_title ipsType_reset'>{lang="categories"}</h3>
	<div class='ipsSideMenu ipsAreaBackground_reset ipsPad_half'>
		<ul class='ipsSideMenu_list'>
			{{foreach $categories as $category}}
				<li>
					<a href="{$category->url()}" class='ipsSideMenu_item ipsTruncate ipsTruncate_line'><span class='ipsBadge ipsBadge_style1 ipsPos_right'>{expression="\IPS\cms\Records::contentCount( $category )"}</span><strong class='ipsType_normal'>{$category->_title}</strong></a>
					{{if $category->hasChildren()}}
						<ul class="ipsSideMenu_list">
							{{foreach $category->children() as $idx => $subcategory}}
								<li>
									{{if $idx >= 5}}
										<a href='{$category->url()}' class='ipsSideMenu_item'><span class='ipsType_light ipsType_small'>{lang="and_x_more" sprintf="count( $category->children() ) - 5"}</span></a>
										{{break;}}
									{{else}}
										<a href="{$subcategory->url()}" class='ipsSideMenu_item ipsTruncate ipsTruncate_line'><strong class='ipsPos_right ipsType_small'>{expression="\IPS\cms\Records::contentCount( $subcategory )"}</strong>{$subcategory->_title}</a>
									{{endif}}
								</li>
							{{endforeach}}
						</ul>
					{{endif}}
				</li>
			{{endforeach}}
		</ul>
		<p class='ipsType_center'>
			<a href='{$url->setQueryString('show','categories')}' class=''>{lang="cms_show_categories"} &nbsp;<i class='fa fa-caret-right'></i></a>
		</p>
	</div>
{{endif}}

In this code you will see this snippet:

{if $idx >= 5}}
<a href='{$category->url()}' class='ipsSideMenu_item'><span class='ipsType_light ipsType_small'>{lang="and_x_more" sprintf="count( $category->children() ) - 5"}</span></a>
{{break;}}
{{else}}
<a href="{$subcategory->url()}" class='ipsSideMenu_item ipsTruncate ipsTruncate_line'><strong class='ipsPos_right ipsType_small'>{expression="\IPS\cms\Records::contentCount( $subcategory )"}</strong>{$subcategory->_title}</a>
{{endif}}

This is what control the behavior so all we need to do is to remove the top part of this and the ending endif. This will look like this:

{{$catClass = '\IPS\cms\Categories' . \IPS\cms\Databases\Dispatcher::i()->databaseId;}}
{{$categories = $catClass::roots();}}
{{if !empty( $categories )}}
	<h3 class='ipsWidget_title ipsType_reset'>{lang="categories"}</h3>
	<div class='ipsSideMenu ipsAreaBackground_reset ipsPad_half'>
		<ul class='ipsSideMenu_list'>
			{{foreach $categories as $category}}
				<li>
					<a href="{$category->url()}" class='ipsSideMenu_item ipsTruncate ipsTruncate_line'><span class='ipsBadge ipsBadge_style1 ipsPos_right'>{expression="\IPS\cms\Records::contentCount( $category )"}</span><strong class='ipsType_normal'>{$category->_title}</strong></a>
					{{if $category->hasChildren()}}
						<ul class="ipsSideMenu_list">
							{{foreach $category->children() as $idx => $subcategory}}
								<li>
									
										<a href="{$subcategory->url()}" class='ipsSideMenu_item ipsTruncate ipsTruncate_line'><strong class='ipsPos_right ipsType_small'>{expression="\IPS\cms\Records::contentCount( $subcategory )"}</strong>{$subcategory->_title}</a>
									
								</li>
							{{endforeach}}
						</ul>
					{{endif}}
				</li>
			{{endforeach}}
		</ul>
		<p class='ipsType_center'>
			<a href='{$url->setQueryString('show','categories')}' class=''>{lang="cms_show_categories"} &nbsp;<i class='fa fa-caret-right'></i></a>
		</p>
	</div>
{{endif}}

 

Link to post
Share on other sites
  • Replies 0
  • Created
  • Last Reply

Top Posters In This Topic

Popular Days

Top Posters In This Topic

Popular Days

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...