вопрос
Собственно необходимо ограничить выводимый title в похожих новостях, но когда прописываю к title limit="10" (например), то он вместо имя новости вывод этот тег. Подскажите пожалуйста, как разрешить использовать этот тег к титлу.
Для шаблона вывода похожих новостей (relatednews.tpl) добавлена поддержка нового тега {title limit="x"}, который выводит заголовок новости, сокращенный до указанного количества в теге X символов. При этом сокращение заголовка производится до завершения логического слова, а не обрывается посередине.
engine/modules/show.full.php DLE 10.1
найти
if( dle_strlen( $related['title'], $config['charset'] ) > 75 ) $related['title'] = dle_substr( $related['title'], 0, 75, $config['charset'] ) . " ...";
заменить на
if( preg_match( "#\\{title limit=['\"](.+?)['\"]\\}#i", $tpl2->copy_template, $matches ) ) {
$count = intval($matches[1]);
$related['title'] = strip_tags( $related['title'] );
if( $count AND dle_strlen( $related['title'], $config['charset'] ) > $count ) {
$related['title'] = dle_substr( $related['title'], 0, $count, $config['charset'] );
if( ($temp_dmax = dle_strrpos( $related['title'], ' ', $config['charset'] )) ) $related['title'] = dle_substr( $related['title'], 0, $temp_dmax, $config['charset'] );
}
$tpl2->set( $matches[0], $related['title'] );
} else if( dle_strlen( $related['title'], $config['charset'] ) > 75 ) {
$related['title'] = dle_substr( $related['title'], 0, 75, $config['charset'] ) . " ...";
}