Вот недавно сделал изменения в DLE... Один заказчик заказывал. В общем, надо что бы тег
{text limit="2000"}
выводил все, кроме картинок.Идем в файл show.full.php и после
$tpl->set( '{full-story}', stripslashes( "<div id="news-id-" . $row['id'] . "" style="display:inline;">" . $row['full_story'] . "</div>" ) );
Вставляем этот код:
$zvlimit = $row['full_story'];
if ( preg_match( "#{text limit=['"](.+?)['"]}#i", $tpl->copy_template, $matches2 ) ) {
$count= intval($matches2[1]);
#Вырезаем ненужные теги
$zvlimit = str_replace( "</p><p>", " ", $zvlimit );
#Вырезаем картинки
$zvlimit = preg_replace("~<img(.*)>~siU","",$zvlimit);
#$zvlimit = strip_tags( $zvlimit, "<br>" );
$zvlimit = trim(str_replace( "<br>", " ", str_replace( "<br />", " ", str_replace( "n", " ", str_replace( "r", "", $zvlimit ) ) ) ));
if( $count AND zv_strlen( $zvlimit, $config['charset'] ) > $count ) {
$zvlimit = zv_substr( $zvlimit, 0, $count, $config['charset'] );
if( ($temp_dmax = zv_strrpos( $zvlimit, ' ', $config['charset'] )) ) $zvlimit = zv_substr( $zvlimit, 0, $temp_dmax, $config['charset'] );
}
$tpl->set( $matches2[0], stripslashes($zvlimit) );
} else $tpl->set( '{text}', $zvlimit );
Ну вот и все.
- Владислав
- 25-04-2012, 19:07
- 4 619