Gå til innhold

Hvordan inkludere RSS i en webside med php?


Anbefalte innlegg

Hei! Jeg driver og lager/forbedrer en webside og tenkte at jeg kunne tenke meg litt "online streaming" nyheter fra noen andre websider.. Jeg har hørt det går ann å gjøre med php, men har ikke alt for mye kunnskaper om php. Så jeg lurte på om noen kunne forklare / vise meg hvordan man inplenterer RSS i en webside med php. Jeg kunne tenke meg en overskrift som linker til siden hvor jeg fikk nyheten fra, og en liten beskrivelse av nyheten samt kanskje et bilde om nyheten har det...

 

Takk!

Themecreator

Lenke til kommentar
Videoannonse
Annonse

<?php
require_once 'magpierss/rss_fetch.inc';

$url = "http://www.battlefield-heroes.com/feed";
$rss = fetch_rss($url);

/*echo "Site: ", $rss->channel['title'], "<br>
";*/
/*
foreach ($rss->items as $item ) {
$title = $item[title];
$url   = $item[link];
$content = $item[atom_content];
echo "<a href=$url>$title</a><br>$content<br><br>
";
}
*/
for ($i = 0; $i < $newscount; $i++) {
$title = $rss->items[$i][title];
$url   = $rss->items[$i][link];
$content = $rss->items[$i][atom_content];
echo "<a href=\"" . $url . "\" target=\"_blank\">" . $title . "</a><br>
";

}

 

Dette er hva jeg har skrevet forløbig... Men denne scripten gir meg bare overskriftene til nyhetene. Hva mer må jeg skrive for å få en beskrivelse av nyheten?

Lenke til kommentar

Hvis du tar en titt på selve feeden, så ser du at nyhetsinnholdet ligger under en description-tag, ikke atom_content - noe jeg antar er grunnen.

 

for ($i = 0; $i < $newscount; $i++) {
$title = $rss->items[$i]['title'];
$url   = $rss->items[$i]['link'];
$content = $rss->items[$i]['description'];
echo "<a href=\"" . $url . "\" target=\"_blank\">" . $title . "</a><br>";
}

Lenke til kommentar
<?php

echo limit_length ( 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras scelerisque dapibus nunc ullamcorper venenatis.' );

function limit_length ( $string, $limit = 30, $post = ' [..]' ) {
	return ( strlen ( $string ) > $limit ? substr ( $string, 0, $limit ) . $post : $string );
}

?>

Endret av Jonas
Lenke til kommentar

Latin man, that's how I roll.

 

Funksjonen bruker du der du ønsker å begrense output til x antall tegn.

 

<?php

for ($i = 0; $i < $newscount; $i++) {
	echo '<h1>' . $rss -> items[$i]['title'] . '</h1>';
	echo '<p>' . limit_length ( $rss -> items[$i]['description'] ) . '</p>';
	echo '<p><a href="' . $rss -> items[$i]['link'] . '" target="_blank">Les mer</a></p>';
}

function limit_length ( $string, $limit = 30, $post = ' [..]' ) {
	return ( strlen ( $string ) > $limit ? substr ( $string, 0, $limit ) . $post : $string );
}

?>

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...