Ошибка в preview.php DLE 9.0
Описание проблемы:
Если вы используете шаблон preview.tpl и для вывода текста полной новости используете только тег {full-story}, то при отсутствии текста полной новости краткая новость не бдует дублироваться при предпросмотре, как это было в более старых версиях.
Решение проблемы:
1. Открыть файл engine/preview.php, найти строки:
if( strlen( $full_story ) < 13 AND strpos( $tpl->copy_template, "{short-story}" ) === false ) { $full_story = $short_story; }
Заменить на:
$fullprevtpl = preg_replace( "'.*[full-preview](.*?)[/full-preview].*'si", "1", $tpl->copy_template ); if( strlen( $full_story ) < 13 AND strpos( $fullprevtpl, "{short-story}" ) === false ) { $full_story = $short_story; }
2. Открыть файл inc/preview.php, найдити строку:
if( strlen( $full_story ) < 13 AND strpos( $tpl->copy_template, "{short-story}" ) === false ) { $full_story = $short_story; }
Заменить на:
$fullprevtpl = preg_replace( "'.*[full-preview](.*?)[/full-preview].*'si", "1", $tpl->copy_template ); if( strlen( $full_story ) < 13 AND strpos( $fullprevtpl, "{short-story}" ) === false ) { $full_story = $short_story; }
PS: Не знаю - может не баг, а фича, но в старых версиях при отсутствии полного текста показывался краткий текст. А пользователи видят, что "полное содержимое" не отображается и дублируют текст.
Автор: m1kola