RSS feed? Oder was sonst?

Deutschsprachiger Support für CMS Made Simple
Post Reply
TeXnik
Forum Members
Forum Members
Posts: 132
Joined: Thu Aug 07, 2008 12:45 pm
Location: Thailand

RSS feed? Oder was sonst?

Post by TeXnik »

Freunde würden auf ihrer Seite (Forum) gerne darstellen, wenn Seiten bei mir neu hinzugekommen sind oder aktualisiert wurden. Wie ist dies am besten zu bewerkstelligen?
Wahrscheinlich sehe ich vor lauter Bäume mal wieder den Wald nicht. Mein Googlen und Search hat mich jedoch nicht weitergebracht.

Mit der Hilfe des CGFeedmaker kam ich auch nicht zurecht, außerdem will ich keine Feeds aus bestimmten Modulen erstellen, sondern die komplette Webseite.
Es wird ja schon eine Sitemap.xml erstellt, die bei jeder Änderung aktualisiert wird, kann man die nicht irgendwie dafür nutzen?
nockenfell
Power Poster
Power Poster
Posts: 751
Joined: Fri Sep 12, 2008 2:34 pm
Location: Schweiz / Switzerland

Re: RSS feed? Oder was sonst?

Post by nockenfell »

Zur gleichen Frage läuft ein anderer Thread:
http://forum.cmsmadesimple.org/index.ph ... 41.new#new
[this message is written with 100% recycled bits]
TeXnik
Forum Members
Forum Members
Posts: 132
Joined: Thu Aug 07, 2008 12:45 pm
Location: Thailand

Re: RSS feed? Oder was sonst?

Post by TeXnik »

Leider hat    mir    auch  der andere    Thread  nicht weiter  geholfen.

Ich will  Dinge  erreichen:
1.    irgendwo auf    derSeite    eine  Auflistung der    neu erstellten    Seiten    bringen
(dasPlug-In  recently_added    funktioniert nicht    mehr undgibt mir diesen Fehleraus:

Code: Select all

Fatal error: Call to undefined method AjaxMadeSimple::ContentPreCompile() in /..../thaiwahn.de/plugins/block.recently_added.php on line 81
)

2.  will ich    einem Forum einen Link  bereitstellen,wo  man    ersehen, obundwelcheSeite  neu sind

Ich  hab  den CGfeedmaker  installiert  und fand    nicht      heraus, wie    manden    dazu    bringt    die neuen    Seiten    der    gesamten    Webseite als    Feed    darzustellen.

Es gibt    viele Beispieltemplates, aber    keines für    die  Gesamte Webseite

Soweit ich ausdenTemplates erkennen konnte, wird  das  Modul fürdasderFeederstellt werdensoll  namentlich aufgerufen

Code: Select all

   {CGBlog assign='junk'}
oder
{news assign='junk'}
Was  muß    da    jetzt    stehen, damit  Seiten angezeigt  werden?
NaN

Re: RSS feed? Oder was sonst?

Post by NaN »

TeXnik wrote:
Leider hat mir auch der andere Thread nicht weiter geholfen.
Warum nicht?
Wo hakt's denn?
Was stimmt denn mit diesem UDT nicht:
nockenfell wrote:
http://wiki.cmsmadesimple.org/index.php ... gs_here/de

Code: Select all


$limit = 10;
if(isset($params['limit']))
$limit = $params['limit'];
$output = '<div class="nav"><div class="heading">Aktualisierungen</div>';
$output .= '<ul class="links">';
global $gCms;
$hm =& $gCms->GetHierarchyManager();
$db = &$gCms->db;
// gibt eine Liste der n zuletzt aktualisierten Seiten aus (außer der Startseite)
$q = "SELECT * FROM ".cms_db_prefix()."content WHERE (type='content' OR type='link')
AND default_content != 1 AND active = 1 AND show_in_menu = 1 
ORDER BY modified_date DESC LIMIT ".$limit;
$dbresult = $db->Execute( $q );
if( !$dbresult )
{
    echo 'Datenbankfehler: '. $db->ErrorMsg()."<br/>";
}
while ($dbresult && $updated_page = $dbresult->FetchRow())
{
    $curnode =& $hm->getNodeById($updated_page['content_id']);
    $curcontent =& $curnode->GetContent();
    $output .= '<li class="updated">';
    $output .= '<a href="'.$curcontent->GetURL().'">'.$updated_page['content_name'].'</a>';
    $output .= '<br />';
    $output .= $updated_page['titleattribute'];
    $output .= '<br />';
    $output .= 'Bearbeitet: ' .$updated_page['modified_date'];
    $output .= '</li>';
}
$output .= '</ul></div>';
echo $output;

Einfach mal ausprobieren und das Ding irgdnwo in Deine Seite einbauen und schauen was passiert.
Wenn er nicht das macht, was Du willst, dann erkläre uns was nicht stimmt. Das ist relativ simpler PHP Code, den kann man auch leicht anpassen.

TeXnik wrote:
(das Plug-In recently_added funktioniert nicht mehr und gibt mir diesen Fehleraus:

Code: Select all

Fatal error: Call to undefined method AjaxMadeSimple::ContentPreCompile() in /..../thaiwahn.de/plugins/block.recently_added.php on line 81
)
Schonmal mal nach AjaxMadeSimple gesucht und versucht, das bemängelte Fehlen des Moduls AjaxMadeSimple so zu beheben, indem Du das Modul AjaxMadeSimple einfach mal installierst? ;)
(Diese Variante ist aber eh nicht wirklich zu empfehlen. Ich wüsste nicht, wozu man da Ajax benötigen sollte. Ein Plugin von einem Modul abhängig zu machen, ist auch keine unbedingt elegante Lösung.)

Es gibt noch ein anderes Plugin namens last_modified_pages. Ist aber schon etwas älter. Weiß nicht, ob das noch funktioniert.

Der CGFeedMaker scheint nur für Module gedacht zu sein.
Man könnte den Feedmaker zwar verwenden um RSS Feeds des MenuManagers auszugeben, aber der MenuManager bietet keine Möglichkeit, die Seiten nach Datum zu sortieren. Würde also nicht viel bringen.
CGFeedmaker für die RSS Ausgabe der aktuellsten Seiten halte ich momentan einfach nicht für die richtige Lösung. Möglicherweise wird es eine derartige Funktion irgendwann geben, aber im Moment würde ich das erstmal sein lassen.

Wenn Du also einen Feed zu den aktuellsten Seiten haben willst, wäre die meiner Meinung nach einfachste Lösung die, die in dem verlinkten Post steht. Erstelle eine Seite, die nicht im Menü sichtbar ist und nichts weiter enthält als einen Dummy Text. Dieser Seite weist Du ein extra Template zu, das eine XML Ausgabe der letzten n Seiten ausgibt.
Und das geht sowohl mit dem {content_dump} Plugin (weil man dort auch nach Datum sortieren kann) als auch mit dem UDT (den muss man allerdings noch anpassen, da er ja so wie er hier steht nur eine Liste der letzten Seiten und kein RSS XML Dingens ausgibt).
So wie es hier beschrieben wurde (mit {content_dump}):
jeff1980 wrote:

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <atom:link href="http://www.domain.de/feed.htm" rel="self" type="application/rss+xml" />
    <title>Feed-Titel</title>
    <link>http://www.domain.de/feed.htm</link>    
    <description>Feed-Beschreibung</description>        
    <generator>CMS Made Simple</generator>        
    <webMaster>mail@domain.de (Vorname Nachname)</webMaster>    
                
    {content_dump limit_count="10" first_sort="modified" first_sort_order="down" do_smarty="strip" dateformat="%a, %d %b %Y %T EST"}

    {foreach from=$dump item=dump}
    <item>
    <title>{$dump->content->title}</title>
    <link>http://www.domain.de/{$dump->content->alias}.htm</link>
    <description><![CDATA[{$dump->content->data}]]></description>
    <pubDate>{$dump->modified->date}</pubDate>
    <guid>http://www.domain.de/{$dump->content->alias}.htm</guid>
    </item>
    {/foreach}

  </channel>
</rss>

{/if}

Dann brauchst Du in Deinem Seitentemplate im Head nur noch einen RSS Link zu dieser neu erstellten unsichtbaren Seite zu platzieren:

Code: Select all




Somit wissen alle gängigen Browser, dass es hier einen RSS Link gibt, der die aktuellsten Seiten anzeigt.
Und wenn man diesem Link folgt, bekommt man auch genau das: Eine Liste der 10 aktuellsten Seiten. (die Zahl 10 kannst Du auch gern noch anpassen)

Wie Du diese Liste ohne zutun des Webseitenbesuchers irgendwo in einem Forum anzeigen lassen kannst, ist eine Frage des verwendeten Forums. Denn die Forensoftware muss die XML Daten selbst beziehen und entsprechend verarbeiten. Wenn das Forum das nicht bietet, ist das leider Pech.
Wenn Du das CMSms Modul Forum Made Simple verwendest, brauchst Du diesen XML RSS Feed Käse überhaupt nicht, denn dann kannst Du den oben genannten UDT oder eben {content_dump} (nur ohne XML Zeugs) auch einfach irgendwo in Deinem Forum-Template platzieren.

Wenn Dich das alles nicht weiterbringt, dann weiß ich leider auch nicht weiter.
Last edited by NaN on Sun Sep 19, 2010 12:31 pm, edited 1 time in total.
TeXnik
Forum Members
Forum Members
Posts: 132
Joined: Thu Aug 07, 2008 12:45 pm
Location: Thailand

Re: RSS feed? Oder was sonst?

Post by TeXnik »

Hallo NaN, diesen UDT    hatte ich    schon    verwendet, der    zeigt    auf    der    Seite nur    das    Datum  an, aber    keinen    Titel    noch einen    Link.
Der  Quellcode  ist  so  ziemlich identisch    mit    dem    Plug-In  recently_modified, welches    komischerweise    immer  noch    einwandfrei  funktioniert. Mit    meinen so    gut    wie    nicht    vorhandenen    Kenntnissen, konnte    ich nicht  feststellen, warum    das    UDT nicht    geht, aber    das    Plug-In.

recently_added zeigte    nur die    neu    angegten Seiten    an, nicht    die    veränderten, fürgibt es recently_modified.

AjaxMadeSimple hatte    ich    vor  längerer Zeit installiert, weil irgendein    Modul    es    brauchte,  kann    es    sein  , AMS    Probleme mit    der  aktuellen CMS-Version hat? Ichwerde  es trotzdem    mal    deinstallieren  und    neu  draufspielen.

Mit dem    RSS-Feed für    neue    Seiten habe    ich mich mit    einem  externen Feedmaker (www.page2rss.com)  beholfen. Ich    warte dann und    hoffe, daß    es    irgendwann mal    eine einfache Funktion für  mich    gibt.

Bei der    Lösung  von    jeff1980  muß ich  doch ein    eigenes    unabhängiges template    erstellen oder reicht    der Code    alsTemplate    aus?

Den RSS-Link  muß ich    dann in    jedes  verwendete    Template im    Header    einfügen?
Post Reply

Return to “German - Deutsch”