• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

Хак Замена значения при незаполненных дополнительных полях

Статус
В этой теме нельзя размещать новые ответы.

noxxxxx

Постоялец
Регистрация
19 Апр 2007
Сообщения
134
Реакции
32
В сети когда-то попадался хак замены информации при незаполненном дополнительном поле, работающий по принципу [aviable] / [not-aviable]. Хак, почему-то, оказался не рабочим, впрочем как и значение "по умолчанию", которое прописывается в админке. Недавно столкнулся с такой необходимостью при создании сайта с некой информационной БД. Реализовалось, как всегда, всё очень просто.
В /engine/modules/show.full/-.short/-.custom.php находим кусок отвечающий за вывод доп.полей и вставляем 2 строчки:
PHP:
// Обработка дополнительных полей
if( $xfound ) {
  $xfieldsdata = xfieldsdataload( $row['xfields'] );
  foreach ( $xfields as $value ) {
	$preg_safe_name = preg_quote( $value[0], "'" );
	if( empty( $xfieldsdata[$value[0]] ) ) {
	  $tpl->copy_template = preg_replace( "'\\[xfgiven_{$preg_safe_name}\\](.*?)\\[/xfgiven_{$preg_safe_name}\\]'is", "", $tpl->copy_template );
//* первая вставка //*
	  $tpl->copy_template = preg_replace( "'\\[not-xfgiven_{$preg_safe_name}\\](.*?)\\[/not-xfgiven_{$preg_safe_name}\\]'is", "\\1", $tpl->copy_template );
//* первая вставка //*
	  } else {
	  $tpl->copy_template = preg_replace( "'\\[xfgiven_{$preg_safe_name}\\](.*?)\\[/xfgiven_{$preg_safe_name}\\]'is", "\\1", $tpl->copy_template );
//* вторая вставка //*
	  $tpl->copy_template = preg_replace( "'\\[not-xfgiven_{$preg_safe_name}\\](.*?)\\[/not-xfgiven_{$preg_safe_name}\\]'is", "", $tpl->copy_template );
//* вторая вставка //*
	}
	$tpl->copy_template = str_replace( "[xfvalue_{$preg_safe_name}]", stripslashes( $xfieldsdata[$value[0]] ), $tpl->copy_template );
  }
}
// Обработка дополнительных полей
в шаблоне вывода, соответственно делается конструкция (в моём случае с именем доп.поля "ssov":(
HTML:
Самый сексуальный овощ: [xfgiven_ssov]<strong>[xfvalue_ssov]</strong>[/xfgiven_ssov][not-xfgiven_ssov]<strong style="color:#900">КАРТОШКА!!!</strong>[/not-xfgiven_ssov]
Если не интересно/не актуально/не туда запостил - сорри. и можно с чистой совестью потереть/пернести/наплевать.
Я не обижусь.:D
 
Так а в чем проблема то? Бегом в оформление тем (см. прикрепленные темы раздела)!!!

Хак такой есть! Рабочий 100% на 8.2-9.0!!! Лично сам его использую... все выводит что должен!
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху