Hallo, lieber Forumbenutzer. Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen Möglichkeiten der Kommunikation ist das Forum ein wenig eingeschlafen und weniger Nutzer benutzen das Forum aktiv (trotzdem lohnt es sich evtl. hier nach Lösungen zu suchen oder seine Frage zu stellen).

Wir empfehlen, für deine Fragen/Probleme aktuell (zusätzlich) Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: http://redaxo.org/slack/
blubb
Beiträge: 33
Registriert: 13. Jul 2005, 13:39
Wohnort: Hannover

RSS Newsfeed [UPDATE] funktioniert jetzt

13. Jul 2005, 19:13

Hi Leute,

hier ein Ansatz für den schon öfters angefragten RSS-Newsfeed, nachdem es im ersten Ansatz mit <rss version="0.91"> nicht richtig geklappt hat, habe ich jetzt mal auf RDF umgestellt, jetzt geht's:

1. Template erstellen:

Code: Alles auswählen

<?php
 header('Content-Type: text/xml');
 echo '<?xml version="1.0" encoding="ISO-8859-1"?>';
?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns="http://my.netscape.com/rdf/simple/0.9/">

<channel>
<title>xxx</title>
<link>http://www.xxx.com/</link>
<description>xxx</description>
</channel>

<?php
 echo $this->getArticle();
?>

</rdf:RDF>
2. Newsfeed auf Newsseite einbinden (und xml.gif besorgen und hochladen):

Code: Alles auswählen

<p>Unser <strong><abbr title="Rich Site Summaries" lang="en">RSS</abbr>-<span lang="en">Newsfeed</span></strong> informiert Sie regelm&auml;&szlig;ig &uuml;ber Neuigkeiten, neue Produkte und Termine. Der Bezug ist kostenlos: <a
href="index.php?article_id=xx" hreflang="de"><img 
src="/files/xml.gif" height="14" width="36"
alt="RSS Newsfeed" title="RSS Newsfeed" /></a><br />
Hinweis: Die angegebene <abbr
title="Uniform Resource Locator">URL</abbr> ist nicht zur Anzeige
im <span lang="en">Browser</span> gedacht, sondern zur Benutzung
mit einem RSS-<span lang="en">Reader</span>.</p>
3. Modul Newsfeedausgabe (in neuen Artikel, dem das obige Template zugewiesen wird, einbinden) (rex_article.category_id=3 an Eure Newsrubrik-ID anpassen!):

Code: Alles auswählen

<?php
$host = $_SERVER[SERVER_NAME];
$path = $_SERVER[SCRIPT_NAME];
$newurl = "http://www." . $host . $path;

// MySQL austricksen: String wie ein Datum behandeln
$sql = "select *, online_von +0, FROM_DAYS( TO_DAYS( online_von ) ) +0 AS Datum from rex_article where rex_article.category_id=3 and startpage=0 and status=1 order by Datum DESC";

$GC = new sql;

$GC->setQuery($sql);

for ($i=0;$i<$GC->getRows();$i++)
{
 
 $aid = $GC->getValue("rex_article.id");

 $jahr = substr($GC->getValue("rex_article.online_von"),0,4);
 $monat = substr($GC->getValue("rex_article.online_von"),4,2);
 $tag = substr($GC->getValue("rex_article.online_von"),6,2);

 $date = "$tag.$monat.$jahr";
 $artikelname = $GC->getValue("rex_article.name");
 $artikelpath = $newurl . "?article_id=$aid";
 
 echo "<item>\n";
 echo "<title>" . $date . " - " . $artikelname . "</title>\n";
 echo "<link>" . $artikelpath . "</link>\n";
 echo "</item>\n\n";

 $GC->next();
}

?>

Im IE und Firefox wird das XML-Dokument korrekt angezeigt,
Opera, Firefox und Thunderbird lesen den Feed korrekt ein.

Viel Spass beim "Feeden" :D

Gruß
Thorsten
Zuletzt geändert von blubb am 17. Jul 2005, 03:22, insgesamt 1-mal geändert.

Benutzeravatar
Markus.Staab
Entwickler
Beiträge: 9634
Registriert: 29. Jan 2005, 15:50
Wohnort: Aschaffenburg/Germany
Kontaktdaten: ICQ Website

13. Jul 2005, 19:24

Hi Thorsten,

Super, dass Du deinen Module mit den anderen Teils..

Vielleicht könnte man ja ein Addon daraus bauen ;)

Gruß,
Markus

Livia
Beiträge: 91
Registriert: 16. Jul 2005, 20:30

Re: RSS Newsfeed [UPDATE] funktioniert jetzt

28. Jul 2005, 14:33

blubb hat geschrieben:1. Template erstellen:
Hab ich erstellt und aktiv geschaltet
blubb hat geschrieben:2. Newsfeed auf Newsseite einbinden (und xml.gif besorgen und hochladen):
Newsseite? Ich hab's in mein HTML Template eingebaut - oder was meinst Du jetzt genau??
blubb hat geschrieben:3. Modul Newsfeedausgabe (in neuen Artikel, dem das obige Template zugewiesen wird, einbinden) (rex_article.category_id=3 an Eure Newsrubrik-ID anpassen!):
Hab ich auch gemacht - hab den Text in den Part Ausgabe des Moduls reinkopiert - ich hoffe, das war richtig... :-?
blubb hat geschrieben:Im IE und Firefox wird das XML-Dokument korrekt angezeigt,
Opera, Firefox und Thunderbird lesen den Feed korrekt ein.

Viel Spass beim "Feeden" :D

Gruß
Thorsten
Bei mir funzt es leider nicht :-( bekomme folgende Fehlermeldung beim Aufrufen meines News Artikels:

Code: Alles auswählen

This page contains the following errors:
error on line 12 at column 18: AttValue: " or ' expected

blubb
Beiträge: 33
Registriert: 13. Jul 2005, 13:39
Wohnort: Hannover

Re: RSS Newsfeed [UPDATE] funktioniert jetzt

28. Jul 2005, 16:34

Hi Livia,
Livia hat geschrieben:Newsseite? Ich hab's in mein HTML Template eingebaut - oder was meinst Du jetzt genau??
Dann erscheint es bei Dir auf jeder Seite, geht natürlich auch. Mit Newsseite meine ich den Artikel, in dem die Newsübersicht angezeigt wird.

Livia hat geschrieben:Hab ich auch gemacht - hab den Text in den Part Ausgabe des Moduls reinkopiert - ich hoffe, das war richtig... :-?
Jau, in "Ausgabe", denn hier soll ja etwas ausgegeben werden.

Livia hat geschrieben: Bei mir funzt es leider nicht :-( bekomme folgende Fehlermeldung beim Aufrufen meines News Artikels:

Code: Alles auswählen

This page contains the following errors:
error on line 12 at column 18: AttValue: " or ' expected
Mit dem Fehler kann ich so erstmal nix anfangen.

Hast Du denn das "xx" gegen die Artikel-ID Deines Newsfeedartikels ausgetauscht?

Code: Alles auswählen

Der Bezug ist kostenlos: <a
href="index.php?article_id=xx" hreflang="de"><img
src="/files/xml.gif" height="14" width="36" ...
Gruß
Thorsten

Livia
Beiträge: 91
Registriert: 16. Jul 2005, 20:30

28. Jul 2005, 16:45

Yes... die ID hab ich ausgetauscht - da wo es um den Artikel geht und auch da, wo es um die Kategorie geht...

Hab auch alle Leerzeichen am Zeilenende des Codes rausgehaun, da ich damit schon mal derbe Probleme hatte, aber das bringt auch nix...

Sobald ich das Template des Artikels auf das RSS Template ändere, bekomm ich die Fehlermeldung :-(

**** EDIT ****
Kann es sein, dass es damit zusammenhängt, dass ich es in einen Startartikel eingefügt habe? :-?

Wenn ich einen Artikel neu mache, geht es - im Reader kommt zwar noch kein Inhalt, aber immerhin holt er was ab und ich bekomme auch keine Fehlermeldung...

Wie lösche ich denn die Startartikel bzw. wie mach ich zusätzliche Artikel in einer Kategorie sichtbar??

blubb
Beiträge: 33
Registriert: 13. Jul 2005, 13:39
Wohnort: Hannover

28. Jul 2005, 17:28

Hi Livia,
Livia hat geschrieben:Kann es sein, dass es damit zusammenhängt, dass ich es in einen Startartikel eingefügt habe? :-?
allgemein als Startartikel: hat damit eigentlich nix zu tun, aber wenn es der Startartikel der Rubrik "News" ist, hat das schon etwas damit zu tun: der Newsfeed muß entweder in eine andere Rubrik oder in eine Unterrubrik von "News", sonst taucht der Newsfeed ja auch in der Artikelübersicht (siehe unten!) der Newsrubrik auf.
Livia hat geschrieben:Wie lösche ich denn die Startartikel bzw. wie mach ich zusätzliche Artikel in einer Kategorie sichtbar??
Startartikel löschen geht meines Wissens nicht.

zusätzliche Artikel "sichtbar" machen:

- bei wichtigen und langfristig erscheinenden Artikeln eine Unterkategorie einrichten, dann ist der/die Artikel über Navigation und Sitemap erreichbar

- bei hoher Artikelzahl oder ständig wechselnden Inhalten wie z.B. "News" als Startartikel eine Artikelübersicht mit Hilfe des entsprechenden Moduls erstellen, in der die Einzelartikel anklickbar sind, siehe z.B. mein Posting "Newsliste nach Datum sortiert": http://forum.redaxo.de/viewtopic.php?t=586

Gruß
Thorsten

Livia
Beiträge: 91
Registriert: 16. Jul 2005, 20:30

28. Jul 2005, 18:06

die Newsliste ist ja echt genial :-) Danke :-)

..wie kann ich denn machen, dass im Newsreader nicht nur die Überschrift angezeigt wird? :-?

sawro
Beiträge: 57
Registriert: 24. Feb 2006, 22:46

nachträgliche fragen

3. Jul 2006, 22:13

hi zusammen,

vorher kurz zusammengefasst:

ich möchte ein rss-newsfeed zur verfügung stehen und die inhalte gleichzeitg als kategorie mit artikelliste im startartikel ausgeben.

1.) ich habe mit den oben geposteten quellcode-beispielen ein news-feed zusammengestellt. danke für die fertigen beispiele. leider zeigt die db-abfrage aus dem modul-script keinen inhalt an - genau gesagt: es werden keine <items> dargestellt. fehlermeldungen gibt's keine. liegt das ev. daran, dass die beispiele für R2 sind und sie in redaxo 3.2 nicht funktionieren?

die ausgabe sieht so aus:

Code: Alles auswählen

  <?xml version="1.0" encoding="ISO-8859-1" ?> 
- <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://my.netscape.com/rdf/simple/0.9/">
- <channel>
- <title>Titel</title>
  <link>http://www.beispiel.de/</link> 
  <description>Beschreibungstext</description> 
  </channel>
  </rdf:RDF>
die category_id hab ich entspr. geändert...
warum findet die abfrage nichts?


2.) daraufhin habe ich mit hilfe des modul-beispiels von oben und einem modul für eine artikelliste folgendes neu zusammen gestellt, was auch funktioniert (Opera liest die News-Feeds ein, alles bestens):

Code: Alles auswählen

<?
$url = "http://";
$host = $_SERVER[SERVER_NAME]; 
$cat = OOCategory::getCategoryById($this->getValue("category_id"));
$article = $cat->getArticles();
if (is_array($article)) {
	foreach ($article as $var) {

	$articleId		= $var->getId();
	$articleName	= $var->getName();
	$articleDescription	= $var->getDescription();
                	
	if ($var->getValue(_startpage) != 1) {
 echo "<item>"; 
 echo "<title>".$articleName."</title>"; 
 echo "<link>".$url.$host."/".rex_getUrl($articleId)."</link>"; 
 echo "<description>".$articleDescription."</description>";
 echo "</item>"; 
		}
	}
}
?>
ich möchte aber die betreffenden artikel auch in der webseite ausgeben und da ruft der startartikel ja das xml-file auf...
wenn ich richtig verstanden habe, was weiter im thread steht, soll man dieses problem mit einer zweiten kategorie lösen, also eine, die versteckt ist und die (news-feed)artikel enthält und eine weitere, in die man die artikelliste aus der versteckten kategorie einliest. das funktioniert auch, nur - "vergißt" der brotkrümel, wo er sich befindet, d. h. er zeigt gar nichts mehr an, wenn man bei den entspr. (news-feed)artikeln angekommen ist....

weiß jemand abhilfe? muss ich das ganz anders anfangen?

lg
sabine

Benutzeravatar
Thomas.Blum
Entwickler
Beiträge: 5063
Registriert: 24. Aug 2004, 22:11
Wohnort: Dresden
Kontaktdaten: Website

4. Jul 2006, 08:13

Hallo Sabine,

schau einmal hier nach. eventuell hilft es dir weiter

http://www.webbude.com/95-0-rss-feed-einbinden.html

vg thomas

sawro
Beiträge: 57
Registriert: 24. Feb 2006, 22:46

4. Jul 2006, 18:57

hi thomas,

danke für die schnelle reaktion. mit deinem script von webbude.com habe ich das gleiche problem mit $path1 = 3, wie es schon einmal hier im forum beschrieben wurde. leider stand nicht da, wie die lösung ausgesehen hat...

ich hab das nicht weiter verfolgt, da ich mein "problem mit der 2. kategorie" auch so in den griff bekommen habe - ohne 2. kategorie. jetzt funktioniert's so, wie ich es haben wollte: 1 kategorie enthält die rss-artikel und einen artikel mit dem xml.template. im startartikel halt die artikelliste.

der fehler war: ich dachte, man könne artikellisten nur über den startartikel erzeugen - mut zur lücke kann ich da nur sagen :D

lg
sabine

Benutzeravatar
Thomas.Blum
Entwickler
Beiträge: 5063
Registriert: 24. Aug 2004, 22:11
Wohnort: Dresden
Kontaktdaten: Website

5. Jul 2006, 08:01

Hej Sabine,
sawro hat geschrieben: der fehler war: ich dachte, man könne artikellisten nur über den startartikel erzeugen - mut zur lücke kann ich da nur sagen :D
das sollte man ruhig des öfteren machen. ein export zur sicherheit und dann einfach mal drauf los testen.

das würde bei manchen sicherlich sogar die ein oder andere frage im forum entfallen.

vg Thomas

Zurück zu „Allgemeines [R2]“