Перейти к публикации

Ограничить в RSS кол-во выводим знаков в новости


Рекомендованные сообщения

Ребят, подскажите, как ограничить в RSS кол-во выводим знаков в новости.

Очень нужно. С вводом {short-story limit="300"} перестал пользоваться короткой новостью и RSS отдает слишком много текста...

Ссылка на сообщение
Поделиться на других сайтах

Какой формат экспорта RSS потока выбран? :)

Ссылка на сообщение
Поделиться на других сайтах

Тогда откройте файл /engine/modules/show.short.php и найдите там строчку:

$row['short_story'] = stripslashes( $row['short_story'] );
над ней вставьте такой код:
$row['short_story'] = preg_replace( "#<!--TBegin(.+?)<!--TEnd-->#is", "", $row['short_story'] );

$row['short_story'] = preg_replace( "'\[attachment=(.*?)\]'si", "", $row['short_story'] );

$row['short_story'] = preg_replace ( "#\[hide\](.+?)\[/hide\]#ims", "", $row['short_story'] );

$row['short_story'] = strip_tags( $row['short_story'], "<br>" );

$row['short_story'] = trim(str_replace( "<br>", " ", str_replace( "<br />", " ", str_replace( "\n", " ", str_replace( "\r", "", $row['short_story'] ) ) ) ));


$count = 200;

if( dle_strlen( $row['short_story'], $config['charset'] ) > $count ) {

    $row['short_story'] = dle_substr( $row['short_story'], 0, $count, $config['charset'] );

    if( ($temp_dmax = dle_strrpos( $row['short_story'], ' ', $config['charset'] )) ) $row['short_story'] = dle_substr( $row['short_story'], 0, $temp_dmax, $config['charset'] );

}[/code]

очистите кэш в админке DLE и проверяйте _http://site.ru/rss.xml

Ссылка на сообщение
Поделиться на других сайтах

Тогда откройте файл /engine/modules/show.short.php

А правками RSS файла обойтись нельзя?
Ссылка на сообщение
Поделиться на других сайтах

Нет, RSS подготавливается в файле show.short.php

В строчке: $count = 200; укажите количество символов, которые надо оставить. А если надо оставить не только текст но и картинки, то строчку

$row['short_story'] = strip_tags( $row['short_story'], "<br>" );

замените на

$row['short_story'] = strip_tags( $row['short_story'], "<br><img>" );

Ссылка на сообщение
Поделиться на других сайтах

Нет, RSS подготавливается в файле show.short.php

Спасибо. А если у меня 2 канала: rss_format=1 и яндекс новости. Конфликта не будет?

Для каждого канала свой файл RSS.

Ссылка на сообщение
Поделиться на других сайтах

Для каждого канала свой файл RSS.

Тогда не будет :)

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...