mtrolik
Участник
- Сообщения
- 26
- Реакции
- 1
В теге custom очень не хватает возможности выводить новости из просматриваемой категории. Сейчас для реализации подобного приходится для каждой категории прописывать свой тег:
Решено это дело немного упростить.
Все новости будут выводиться одним тегом с указанным category="current" или category="current_sub"
и
[aviable=cat]{ custom category="current_sub"}[/aviable]
current - берет ID одной категории, непосредственно той, в которой находится пользователь.
current_sub - создает список категорий с учетом подкатегорий просматриваемой категории.
aviable - необходим, т.к. во всех других случах переменная $category_id будет пустая и мы получим MySQL ошибку.
Установка:
1. Открыть файл engine/modules/functions.php:
В Dle 9.7 и 9.8 найти строку:
Вставить перед
В Dle 10.0 и старше найти строку:
После вставить
Найти
И после нее вставить закрывающую скобку:
}
Код:
[category=1]{ custom category="1"}[/category]
[category=2]{ custom category="2"}[/category]
...
Все новости будут выводиться одним тегом с указанным category="current" или category="current_sub"
Код:
[aviable=cat|showfull]{ custom category="current"}[/aviable]
[aviable=cat]{ custom category="current_sub"}[/aviable]
current - берет ID одной категории, непосредственно той, в которой находится пользователь.
current_sub - создает список категорий с учетом подкатегорий просматриваемой категории.
aviable - необходим, т.к. во всех других случах переменная $category_id будет пустая и мы получим MySQL ошибку.
Установка:
1. Открыть файл engine/modules/functions.php:
В Dle 9.7 и 9.8 найти строку:
Код:
$custom_category = $db->safesql( trim(str_replace( ',', '|', $match[1] )) );
Код:
if($match[1]=='current') $custom_category = $category_id;
elseif($match[1]=='current_sub') $custom_category = get_sub_cats($category_id);
else
Код:
if( preg_match( "#category=['"](.+?)['"]#i", $param_str, $match ) ) {
Код:
if($match[1]=='current') $custom_category = $category_id;
elseif($match[1]=='current_sub') $custom_category = get_sub_cats($category_id);
else{
Код:
$custom_category = $db->safesql( trim(str_replace( ',', '|', $temp_array )) );
}