Поиск статей

Случайный файл

  • IPB Hi-Tech Style 2.2/2.3 (Russian)

Лицензия на IPB


    Хостинг для IPB3

    • Рекомендуем: "ISPServer" и "ТаймВэб"
      Это действительно хороший хостинг, доступные тарифы гарантируют memory_limit в 128 и 256М. Напоминаем, что минимальные требования IPB3 – 128M.

Записи в блогах

Сворачиваемые категории -----

Фев 08 2011 21:00 | RuB@N » в Настройка IP.Content

И так,активно использую этот форум,решил поделиться полезной модификацией.
Автор: Я
После данных изменений, наши подкатегории станут сворачиваться.

В блоках, вставляем в блок категорий этот код
<div id='category_list' class='general_box clearfix'>
<h3>Категории <a href='{$this->_database_url}?view=categories' class='right'>Все →</a></h3>
<ul class="menu">
<if test="is_array( $this->_categories ) && count( $this->_categories )"><foreach loop="$this->_categories[0] as $r">
<li>
<a href='{$this->registry->ccsFunctions->returnDatabaseUrl( $r['category_database_id'], $r['category_id'] )}'>{$r['category_name']}</a>
<if test="count( $this->_categories[ $r['category_id'] ] )">
<ul class="subnav"> <foreach loop="$this->_categories[ $r['category_id'] ] as $sub">
<li>
<a href='{$this->registry->ccsFunctions->returnDatabaseUrl( $sub['category_database_id'], $sub['category_id'] )}'><img src='http://ipbskins.ru/forum/public/style_images/ipbskins/bullet.png' alt='>' /> {$sub['category_name']}</a>
</li>
</foreach></ul>
</if>
</li>
</foreach></if>
</ul>

</div>


В (если работает IPBWRAPPER):
Перед :
<script type='text/javascript'>
Loader.boot();
</script>


Вставляем:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script>!window.jQuery && document.write('<script src="http://ipbskins.ru/forum/public/style_images/ipbskins/_http://ipbskins.ru/forum/public/js/jquery-1.4.2.min.js"><\/script>')</script>
<script type="text/javascript">
jQuery.noConflict();
jQuery(document).ready(function($){
$(document).ready(function(){
$("ul.menu li a").mouseover(function() {
$(this).parent().find("ul.subnav").slideDown('fast').show();
$(this).parent().hover(function() {
}, function(){
$(this).parent().find("ul.subnav").slideUp('slow');
});
});
});

});
</script>


Ну и в CSS вставляем:
ul.menu li {
position: relative;
}

ul.menu li ul.subnav {
display: none;

}


Загрузить: jquery-1.4.2.min_.rar

На здоровье!

Заказать уникальные серьги пусеты на сайте ювелирного магазина.

14 – комментариев

Страница 1 из 1

Fisana »

10 Февраль 2011 - 21:18
http://ipbskins.ru/ipcontent/
Сделала тут вроде для субкатегорий.
Спасибо

Первую тему пришлось удалить. Она продублировалась. Кроме того, комментарии возможны только из тем :)
3

Атаман »

19 Март 2013 - 10:30
Для новых версий IP.Content 2.3.x

В блоке ищем: Articles Menu

<div id='category_list' class='general_box clearfix'>
	<h3>{$this->lang->words['ab__categories']} <a href='{$this->_database_url}?view=categories'>{$this->lang->words['ab__seealllink']}</a></h3>
	<ul>
		<if test="is_array( $this->_categories ) && count( $this->_categories )">
			<foreach loop="$this->_categories[0] as $r">
				<li>
					<a href='{$this->registry->ccsFunctions->returnDatabaseUrl( $r['category_database_id'], $r['category_id'] )}'>{$r['category_name']}</a>
					<if test="count( $this->_categories[ $r['category_id'] ] )">
						<ul>
							<foreach loop="$this->_categories[ $r['category_id'] ] as $sub">
								<li>
									<a href='{$this->registry->ccsFunctions->returnDatabaseUrl( $sub['category_database_id'], $sub['category_id'] )}'>{$sub['category_name']}</a>
								</li>
							</foreach>
						</ul>
					</if>
				</li>
			</foreach>
		</if>
	</ul>
</div>


Заменяем:
<div id='category_list' class='general_box clearfix'>
	<h3>{$this->lang->words['ab__categories']} <a href='{$this->_database_url}?view=categories'>{$this->lang->words['ab__seealllink']}</a></h3>
	<ul class="menu"> 
		<if test="is_array( $this->_categories ) && count( $this->_categories )">
			<foreach loop="$this->_categories[0] as $r">
				<li>
					<a href='{$this->registry->ccsFunctions->returnDatabaseUrl( $r['category_database_id'], $r['category_id'] )}'>{$r['category_name']}</a>
					<if test="count( $this->_categories[ $r['category_id'] ] )">
						<ul class="subnav"> <foreach loop="$this->_categories[ $r['category_id'] ] as $sub">
                    <li>
									<a href='{$this->registry->ccsFunctions->returnDatabaseUrl( $sub['category_database_id'], $sub['category_id'] )}'><img src='{style_images_url}/bullet.png' alt='&gt;' />{$sub['category_name']}</a>
								</li>
							</foreach>
						</ul>
					</if>
				</li>
			</foreach>
		</if>
	</ul>
</div>


Внейшний вид: globalTemplate

Ищем:
<script type='text/javascript'>


Вставляем перед: Но не забудьте изменить ссылку на путь к JS "Ваш сайт"
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script>!window.jQuery && document.write('<script src="http://Ваш сайт/js/jquery-1.4.2.min.js"><\/script>')</script>
<script type="text/javascript">
jQuery.noConflict(); 
jQuery(document).ready(function($){	
$(document).ready(function(){
     $("ul.menu li a").mouseover(function() {           
        $(this).parent().find("ul.subnav").slideDown('fast').show(); 
        $(this).parent().hover(function() {
        }, function(){    
            $(this).parent().find("ul.subnav").slideUp('slow'); 
        });
        });
   }); 

});
</script>


В ipb_styles.css добавляем

ul.menu li {
    position: relative; 
}

ul.menu li ul.subnav {
    display: none;
    
}


Скачать: [attachment=2822:jquery-1.4.2.min_.rar]
2

Атаман »

30 Август 2013 - 21:22
Столкнулся с такой проблемой.

Форум лицензия, шаблон родной, все чисто гладко. JAVA скрипты вкл и откл. Создал в портале категорий 10-15 и в некоторых категориях подкатегорий по шт 20. И решил, чтоб не было длинное меню сделать сворачивание. Все сделал, настроил не 1вый раз. Открываю портал, а подкатегории не скрыты, а только мышку наведешь на категорию где подкатегории, сразу менюшка начинает работать.

По стандарту при открытие портала все должно быть скрыто, а тут наоборот).
0

Dmitriy427 »

31 Август 2013 - 11:05
В новом контенте библиотека JQuery версии 1.7.1 используется в модуле управления главным меню. Если вы грузите еще и 1.4.2, то возможен конфликт версий.
1

Атаман »

31 Август 2013 - 11:17
Я изменил на 1.7.1 меню, плавнее стало, но как было все так и осталась(
0

Атаман »

31 Август 2013 - 11:43
:D проблема была простая, в css в конце кода не добавил }
1

Атаман »

18 Октябрь 2013 - 22:29
Кто знает, каким свойством можно сделать так, чтоб справа от категории была кнопка раскрыть-скрыть категорию? То плавное разворачивание надоело. Спасибо
0

Dmitriy427 »

19 Октябрь 2013 - 00:24

Просмотреть сообщениеАтаман 18 Октябрь 2013 - 22:29 сказал(а):

Кто знает, каким свойством можно сделать так, чтоб справа от категории была кнопка раскрыть-скрыть категорию? То плавное разворачивание надоело. Спасибо


В блоке "Articles Menu":
<div id='category_list' class='general_box clearfix'>
	<h3>{$this->lang->words['ab__categories']} <a href='{$this->_database_url}?view=categories'>{$this->lang->words['ab__seealllink']}</a></h3>
	<ul class='menu'>
		<if test="is_array( $this->_categories ) && count( $this->_categories )">
			<foreach loop="$this->_categories[0] as $r">
				<li>
					<span class='plus'><img src='{style_images_url}/btn-expand.png' /></span>
					<span class='minus' style='display: none;'><img src='{style_images_url}/btn-collapse.png' /></span>
					<span class='categories'>{$r['category_name']}</span>
					<if test="count( $this->_categories[ $r['category_id'] ] )">
						<ul class='subnav'>
							<foreach loop="$this->_categories[ $r['category_id'] ] as $sub">
								<li>
									<a href='{$this->registry->ccsFunctions->returnDatabaseUrl( $sub['category_database_id'], $sub['category_id'] )}'>{$sub['category_name']}</a>
								</li>
							</foreach>
						</ul>
					</if>
				</li>
			</foreach>
		</if>
	</ul>
</div>

Скрипт:
<script type="text/javascript">
jQuery.noConflict(); 
jQuery(document).ready(function($){	
$(document).ready(function(){
     $("ul.menu li span").click(function() {
         $(this).parent().find("span.plus").toggle();
         $(this).parent().find("span.minus").toggle();
         $(this).parent().find("ul.subnav").slideToggle("normal");
       });
    });
 });
</script>

CSS меню и иконки кнопок на ваше усмотрение (btn-expand.png, btn-collapse.png заливаются в папку с графикой актуального стиля). Пример.

Ссылка на родительскую категорию тут вырезана, клик на ней разворачивает-сворачивает категорию. Если хотите оставить активной только кнопку и вернуть ссылку, то нужно заменить:
<span class='categories'>{$r['category_name']}</span>
на:
<a href='{$this->registry->ccsFunctions->returnDatabaseUrl( $r['category_database_id'], $r['category_id'] )}'>{$r['category_name']}</a>

Выравнивание кнопок по правому краю меню:
<span class='plus right'><img src='{style_images_url}/btn-expand.png' /></span>
<span class='minus right' style='display: none;'><img src='{style_images_url}/btn-collapse.png' /></span>
2

Атаман »

19 Октябрь 2013 - 09:36
Спасибо сделал, а можно сделать + и - возле тех категорий ы которых подкатегории.
0

Dmitriy427 »

19 Октябрь 2013 - 10:39

Просмотреть сообщениеАтаман 19 Октябрь 2013 - 09:36 сказал(а):

Спасибо сделал, а можно сделать + и - возле тех категорий ы которых подкатегории.

<style>
span.minus, span.sub_minus, ul.subnav, ul.sub_subnav {
	 display: none;
}
ul.sub_subnav li a { 
	padding-left: 35px !important;
}
#category_list ul li a { 
	display: inline-block !important;
	padding-right: 0 !important;
	width: 155px;
}
</style>
<div id='category_list' class='general_box clearfix'>
    <h3>{$this->lang->words['ab__categories']} <a href='{$this->_database_url}?view=categories'>{$this->lang->words['ab__seealllink']}</a></h3>
    <ul class='menu'>
        <if test="is_array( $this->_categories ) && count( $this->_categories )">
            <foreach loop="$this->_categories[0] as $r">
                <li>
                    <a href='{$this->registry->ccsFunctions->returnDatabaseUrl( $r['category_database_id'], $r['category_id'] )}'>{$r['category_name']}</a>
                    <if test="count( $this->_categories[ $r['category_id'] ] )">
                        <span class='plus right'><img src='{style_images_url}/btn-expand.png' /></span>
                        <span class='minus right'><img src='{style_images_url}/btn-collapse.png' /></span>
                        <ul class='subnav'>
                            <foreach loop="$this->_categories[ $r['category_id'] ] as $sub">
                                <li>
                                    <a href='{$this->registry->ccsFunctions->returnDatabaseUrl( $sub['category_database_id'], $sub['category_id'] )}'>{$sub['category_name']}</a>
                                    <if test="count( $this->_categories[ $sub['category_id'] ] )">
                                        <span class='sub_plus right'><img src='{style_images_url}/btn-expand.png' /></span>
                                        <span class='sub_minus right'><img src='{style_images_url}/btn-collapse.png' /></span>
                                        <ul class='sub_subnav'>
                                            <foreach loop="$this->_categories[ $sub['category_id'] ] as $sub_sub">
                                                <li>
                                                    <a href='{$this->registry->ccsFunctions->returnDatabaseUrl( $sub_sub['category_database_id'], $sub_sub['category_id'] )}'>{$sub_sub['category_name']}</a>
                                                </li>
                                            </foreach>
                                         </ul>
                                    </if>
                                </li>
                            </foreach>
                        </ul>
                    </if>
                </li>
            </foreach>
        </if>
    </ul>
</div>

<script type="text/javascript">
jQuery.noConflict(); 
jQuery(document).ready(function($){ 
	$(document).ready(function(){
		$("ul.menu li span").click(function() {
			$(this).parent().find("span.plus").toggle();
			$(this).parent().find("span.minus").toggle();
			$(this).parent().find("ul.subnav").slideToggle("normal");
		});
		$("ul.subnav li span").click(function() {
			$(this).parent().find("span.sub_plus").toggle();
			$(this).parent().find("span.sub_minus").toggle();
			$(this).parent().find("ul.sub_subnav").slideToggle("normal");
		});
	});
 });
</script>

Примерно так, но скрипт надо проверять, возможна накладка. Кнопки нужно под условие опустить, что бы не парсились, если нет подкатегорий. Плюс добавлен 3-й уровень вложенности меню.
1

Атаман »

19 Октябрь 2013 - 16:56
<div id='category_list' class='general_box clearfix'>
	<h3>{$this->lang->words['ab__categories']} <a href='{$this->_database_url}?view=categories'>{$this->lang->words['ab__seealllink']}</a></h3> 
               <if test="$this->_database_url">
	<br />
                <ul class="menu">
		<if test="is_array( $this->_categories ) && count( $this->_categories )">
			<foreach loop="$this->_categories[0] as $r">
				<li>
                                        <span class='plus right'><img src='{style_images_url}/btn-expand.png' /></span>
<span class='minus right' style='display: none;'><img src='{style_images_url}/btn-collapse.png' /></span>
					<a href='{$this->registry->ccsFunctions->returnDatabaseUrl( $r['category_database_id'], $r['category_id'] )}'>{$r['category_name']} ({$r['category_records']})</a>
					<if test="count( $this->_categories[ $r['category_id'] ] )">
						<ul class="subnav"> <foreach loop="$this->_categories[ $r['category_id'] ] as $sub">
                    <li>
									<a href='{$this->registry->ccsFunctions->returnDatabaseUrl( $sub['category_database_id'], $sub['category_id'] )}'><img src='{style_images_url}/bullet.png' alt='&gt;' />{$sub['category_name']}({$r['category_records']})</a>
								</li>
							</foreach>
						</ul>
					</if>
				</li>
			</foreach>
		</if>
	</ul>
</div>


У меня не получилось с последним методом, вот мой код. У меня после вставки последнего варианта все съехало.
0

Dmitriy427 »

19 Октябрь 2013 - 18:15

Просмотреть сообщениеАтаман 19 Октябрь 2013 - 16:56 сказал(а):

У меня не получилось с последним методом, вот мой код. У меня после вставки последнего варианта все съехало.

Это вам нужно стили меню править. В сообщении выше воткнул css в блок, для примера.
Все работает:
[attachment=3083:ScreenShot 51.jpg]
1

Атаман »

19 Октябрь 2013 - 18:27
Спасибо все супер.

В ксс добавил, код полностью заменил)). Спасибо.
0

Desme »

14 Июнь 2014 - 18:21
Всем привет!

Есть категории:


Цитата

Статьи
База знаний



В категории "База знаний" есть под категория - "Рыбки" и еще одна под категория "Барбусы" в этим самых "Рыбках".

Проблема в том, что при наведении курсора на "Рыбки" не выпадает список под категорий этой под категории и при нажатии на странице не отображается список под категорий.

Как быть? Где править?

Спасибо!


К слову пункт

Цитата

Показать список статей в этой категории? ДаНет
Если 'нет', в этой категории будут отображены только подкатегории. Если 'да', в этой категории будут отображены подкатегории и статьи.

Отключен

Стоит IP.Content v2.3.6 и хук (CSN-IPB34) jQuery v1.1.0
0
Вы не можете оставить комментарий
Страница 1 из 1


Сайт работает на IP.Content

Контактная информация

Вопросы по работе сайта

+7 (917) 501-4765
C 10 до 20 в рабочие дни (время московское)

Техническая поддержка

Контактные данные специалистов

Дизайн форумов

IPB 3.x ¦ IPB 2.x

Бесплатные шаблоны

IPB 3.2 – 3.4 ¦ IPB 3.1 ¦ IPB 3.0 ¦ IPB 2.2 – 2.3 ¦ IPB 2.1 ¦ Клипарт
Лицензия на использование ¦ Ваша поддержка ¦ О проекте
Copyright © 2005-2017 IPBSkins.ru Team
При копировании материалов с сайта
прямая ссылка на источник обязательна