Доброго времени суток. Наткнулся я на хак, с необходимым мне функционалом, но на последних версиях dle он не работает. Что он собственно делать должен : есть доп поле типа список, с вариантами да и нет, хак позволяет выводить различную информацию если выбран тот или иной вариант ответа.
1.Открываем фаил
show.full.php и ищем
if( strpos( $tpl->copy_template, "[catlist=" ) !== false ) {
$tpl->copy_template = preg_replace_callback ( "#\\[(catlist)=(.+?)\\](.*?)\\[/catlist\\]#is", "check_category", $tpl->copy_template );
}
Вставить после
$xfieldsdataasdasd = xfieldsdataload( $row["xfields"] );
function if_xfields($per1,$type_if,$per2,$block) {
global $xfieldsdataasdasd;
$xfieldsdata=$xfieldsdataasdasd;
switch($type_if){
case "==" :
if($xfieldsdata[$per1
3;!=$per2) return '';
break;
case "!=" :
if($xfieldsdata[$per1
3;==$per2) return '';
break;
case ">" :
if($xfieldsdata[$per1
3;<$per2) return '';
break;
case "<" :
if($xfieldsdata[$per1
3;>$per2) return '';
break;
}
$block = str_replace( '\"', '"', $block );
return $block;
}
if (strpos ( $tpl->copy_template, "[if-xfields" ) !== false) {
$tpl-
2;copy_template = preg_replace ( "#\\[if-xfields\\[(.+?)\\](.+?)\\[&a
mp;a
mp;a
mp;#
40;.+?)\\]\\](.*?)\\[/if-xfields\\]#ies"
, "if_xfields('\\1', '\\2', '\\3', '\\4')", $tpl->copy_template );
Пример использования
[if-xfields[pokazivat-block]==[Да]]
Ты ответил да
[/if-xfields]
[if-xfields[pokazivat-block]==[Нет]]
Ты ответил нет
[/if-xfields]
Посмотрев на код, написанный неким человеком я невольно поржал с синтаксиса, сделал свои правки но код не работал. Может кто из профи допилить код или рассказать о своем варианте создания условия для доп поля в новости