25 марта 2023 года я разбирался, почему в RSS-ленте WordPress показывается только кусок записи. Спецификация RSS 2.0 довольно расплывчата: в поле description можно класть и краткое описание, и полный текст. WordPress по умолчанию кладёт туда отрывок, а полный текст отдаёт отдельно в поле content:encoded. Некоторые читалки и сервисы смотрят только на description и поэтому показывают обрезанный текст.
Сначала проверьте настройки
В админке откройте «Настройки», затем «Чтение», найдите пункт «Для каждой записи в ленте показывать» и выберите «Полный текст». Этого обычно достаточно, чтобы полный текст попал в ленту.
Если сервис всё равно берёт отрывок
В старой инструкции, на которую я опирался (оригинал в блоге blackhc), предлагалось править файлы wp-includes/feed-rss2.php и feed-rss2-comments.php. Так делать не стоит: при обновлении WordPress эти файлы перезапишутся, и правка пропадёт. Тот же результат даёт небольшой фильтр в functions.php дочерней темы или в отдельном плагине:
add_filter( 'the_excerpt_rss', function( $excerpt ) {
return get_the_content_feed( 'rss2' );
} );
Теперь в description попадёт полный текст записи. Если ленту читает автопостинг в соцсети, проверьте, как он берёт текст, и при необходимости ограничьте длину на его стороне. Как я настроил автопостинг, описано в заметках про MAX и про X. Больше о фильтрах вроде этого в заметке погружение в фильтры WordPress.
Полный текст в RSS включается одной галочкой в настройках, а фильтр нужен только для капризных сервисов, и в обоих случаях ядро трогать не нужно.