Иногда надо убрать информацию из main.tpl для определенной категории. Но убрать надо только из режима вывода списка новостей. Но в режиме полная новость информация должна выводиться. Стандартным тегом «not-category=X» такого не сделать. Поэтому предлагаю Вам решение.
1. Открыть index.php, найти строку
if (stripos ( $tpl->copy_template, "[not-category=" ) !== false) {
$tpl->copy_template = preg_replace ( "#[not-category=(.+?)](.*?)[/not-category]#ies", "check_category('1', '2', '{$category_id}', false)", $tpl->copy_template );
}
добавить ниже
// Убираем чисто при выводе опередленной категории.
if($dle_module == "cat") {
if (stripos ( $tpl->copy_template, "[not-only-category=" ) !== false) {
$tpl->copy_template = preg_replace ( "#[not-only-category=(.+?)](.*?)[/not-only-category]#ies", "check_category('1', '2', '{$category_id}', false)", $tpl->copy_template );
}
} else {
if (stripos ( $tpl->copy_template, "[not-only-category=" ) !== false) {
$tpl->copy_template = preg_replace ( "#[not-only-category=(.+?)](.*?)[/not-only-category]#ies", "check_category('1', '2', '-1', false)", $tpl->copy_template );
}
}
// END
2. В main.tpl вставить теги
[not-only-category=X] скрываемый текст [/not-only-category]
Где X — это список ID категорий через запятую.
Версия DLE: 9.x
Автор: Snake