Skocz do zawartości
ramm

[wordpress] Jak ograniczyć długość wpisów w kanale RSS?

Polecane posty

Witajcie,

 

mój RSS na wordpressowym blogu serwuje pełną treść, a chciałbym by pokazywał np. jednie pierwsze 200 znaków, a następnie wyświetlał link "Czytaj dalej", który przeniesie usera na stronę.

 

W zakładce: Ustawienia -> Czytanie -> W kanałach nowości wyświetlaj -> mam zaznaczone: Wypisy

 

A więc powinno być chyba OK. Dowiedziałem się jednak, że to ucina jedynie treść, która pojawia się po znaczniku "more". Problem w tym, że na mojej stronie nikt takowego nie używa, bo skrypt po prostu z automatu ucina na stronie głównej wpisy po 200 znakach - zatem nie ma potrzeby.

 

Będę wdzięczny za radę co w takiej sytuacji zrobić? Jak rozwiązać ten problem?

 

Pozdrawiam!

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Najszybszym sposobem byłoby zmodyfikowanie skryptu wp-includes/feed-rss.php lub wp-includes/feed-rss2.php

 

 

 

<?php the_excerpt_rss( $cut, $encode_html ); ?>

 

 

$cut (integer) Number of words to display before ending the excerpt. Can be any numeric value up to the default.

 

 

https://codex.wordpress.org/Template_Tags/the_excerpt_rss

https://codex.wordpress.org/Function_Reference/the_excerpt_rss

 

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

xorg - dziękuję za pomoc.

W wp-includes/ znalazłem zarówno "feed-rss.php" jak i "feed-rss2.php". Jest nawet po prostu "rss.php".

Po wyszukiwaniu w nich "php the_excerpt_rss" znalazłem takie fragmenty kodu:

 

feed-rss.php:

<?php while (have_posts()) : the_post(); ?>
	<item>
		<title><?php the_title_rss() ?></title>
		<description><![CDATA[<?php the_excerpt_rss() ?>]]></description>
		<link><?php the_permalink_rss() ?></link>
		<?php
		/**
		 * Fires at the end of each RSS feed item.
		 *
		 * @since 2.0.0
		 */
		do_action( 'rss_item' );
		?>

Natomiast w feed-rss2.php:

<?php if (get_option('rss_use_excerpt')) : ?>
		<description><![CDATA[<?php the_excerpt_rss(); ?>]]></description>
<?php else : ?>
		<description><![CDATA[<?php the_excerpt_rss(); ?>]]></description>
	<?php $content = get_the_content_feed('rss2'); ?>
	<?php if ( strlen( $content ) > 0 ) : ?>
		<content:encoded><![CDATA[<?php echo $content; ?>]]></content:encoded>
	<?php else : ?>
		<content:encoded><![CDATA[<?php the_excerpt_rss(); ?>]]></content:encoded>
	<?php endif; ?>
<?php endif; ?>

Czy coś z tego mam zmodyfikować, czy gdzieś mam dodać kod który podałeś? Jeśli dodać to w którym miejscu?

 

Z góry dziękuję za wyrozumiałość. Nie znam PHP. Edukację w tym kierunku zakończyłem na HTML... :D

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Zaloguj się, aby skomentować

Będziesz mógł dodać komentarz po zalogowaniu się



Zaloguj się

×