Выяснил, как можно избавиться от отображения формы комментов при выводе полного списка новостей (для моего сайта это важно).
Страница, на которой выводится список новостей имеет вид:
http://site.ru/page.htmlСтраница, на которой отображается каждая новость имеет вид:
http://site.ru/page.html?id=1В comments.class.php необходимо сравнить адреса или значение переменной id в строке браузера (я только не могу понять, в какой переменной из ядра передается значение id и название страницы page?Подскажите??) и в по результатам сравнения выводить или не выводить форму.
в строке 117 надо немного подкорректировать код case 'form_show': , чтобы стало примерно так:
if ($_GET['id']=="0" || $_GET['id']==""){echo " ";}
else {
if (strlen($kernel->pub_httpget_get($this->publish_success_param))>0)
{$content = $content.$this->get_template_block('processing_success');}
else if (strlen($kernel->pub_httpget_get($this->publish_2moderate_param))>0)
{$content = $content.$this->get_template_block('need_admin_approve');}
$content = $content.$this->get_template_block('form');
//$content = str_replace('%form_action%', '/'.$kernel->pub_page_current_get().'.html?'.$this->get_action_name().'=form_processing', $content);
$content=$this->priv_generate_captcha_part($content);
}
break;
Это чтобы форма не отображалась. Да, кстати, в шаблоне комментов под меткой <!-- @no_data --> надо удалить фразу
"Нет комментариев". И тогда под списком всех новостей не будет отображаться ни форма ни комменты:)))
Ps: один минус, который исправлю - данный способ пашет только в архиве новостей (при этом форма перестает отображаться в других разделах сайта) - надо немного изменить условие в if
