28.04.2008, 20:08
Ich weiß, dass es einen ähnlichen Thread schon gibt, aber der trifft nicht ganz mein Problem.
Gibt es eine Möglichkeit die Threads mit den neuesten Beiträgen als News-Feed auszugeben ?
Ich benötige das für ein Widget in Wordpress.
Standardmäßig zeigt er ja immer nur die neuesten Themen an, aber nicht die Themen wo jeweils der aktuellste Beitrag vorhanden ist.
Im anderen Thread hatte ich die rss2.php gesehen von Michael, allerdings zeigt er dann für jeden Thread auch mehrere Antworten mit an.
Ich möchte, dass immer die Threads nach jeweils aktuellstem Beitrag geordnet angezeigt werden.
Vermutlich ist das ja nur ne kleine Änderung in der rss2.php
Diese sieht bislang so aus:
Gibt es eine Möglichkeit die Threads mit den neuesten Beiträgen als News-Feed auszugeben ?
Ich benötige das für ein Widget in Wordpress.
Standardmäßig zeigt er ja immer nur die neuesten Themen an, aber nicht die Themen wo jeweils der aktuellste Beitrag vorhanden ist.
Im anderen Thread hatte ich die rss2.php gesehen von Michael, allerdings zeigt er dann für jeden Thread auch mehrere Antworten mit an.
Ich möchte, dass immer die Threads nach jeweils aktuellstem Beitrag geordnet angezeigt werden.
Vermutlich ist das ja nur ne kleine Änderung in der rss2.php
Diese sieht bislang so aus:
PHP-Code:
<?php
### Neueste Posts per RSS ###
// Globales
define("IN_MYBB", 1);
define("KILL_GLOBALS", 1);
define("NO_ONLINE", 1);
require "./global.php";
// Nicht sichtbare Foren
$unviewable = get_unviewable_forums();
if($unviewable) {
$unviewable = "AND fid NOT IN($unviewable)";
}
// Limit - Anzahl der Posts
if(!isset($mybb->input['limit'])) {
$limit = "10";
}
elseif(intval($mybb->input['limit']) > "30") {
$limit = "30";
} else {
$limit = intval($mybb->input['limit']);
}
// Nur bestimte Foren?
if(isset($mybb->input['forums'])) {
$forums = explode(",", $mybb->input['forums']);
$sep = "";
foreach($forums as $forum) {
$inforums .= $sep.intval($forum);
$sep = ",";
}
$inforums = "AND fid IN (".$inforums.")";
}
// Name
$title = htmlspecialchars_uni($mybb->settings['bbname'].$title);
// Head ausgeben
header("Content-Type: text/xml");
echo "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n";
echo "<rss version=\"0.92\">\n";
echo "\t<channel>\n";
echo "\t\t<title><![CDATA[".$title."]]></title>\n";
echo "\t\t<link>".$mybb->settings['bburl']."</link>\n";
echo "\t\t<description><![CDATA[".$mybb->settings['bbname']." - ".$mybb->settings['bburl']."]]></description>\n";
echo "\t\t<language>de</language>\n";
// Posts aus Datenbank holen
$query = $db->query("SELECT * FROM ".TABLE_PREFIX."threads WHERE 1=1 $unviewable $inforums ORDER BY lastpost DESC LIMIT 0,".$limit."");
while($newest_threads = $db->fetch_array($query)) {
// Forum ermitteln
$query2 = $db->query("SELECT name FROM ".TABLE_PREFIX."forums WHERE fid = '".$posts['fid']."' LIMIT 0,1");
$forums = $db->fetch_array($query2);
echo "\t\t<item>\n";
echo "\t\t\t<title>".htmlspecialchars_uni($threads['subject'])."</title>\n";
echo "\t\t\t<author>".htmlspecialchars_uni($threads['username'])."</author>\n";
echo "\t\t\t<description><![CDATA[".$forums['name'].": ".htmlspecialchars_uni($threads['message'])."]]></description>\n";
echo "\t\t\t<link>".$mybb->settings['bburl']."/showthread.php?tid=".$newest_threads['tid']."&pid=".$newest_threads['pid']."#pid".$newest_threads['pid']."</link>\n";
echo "\t\t</item>\n";
}
// Abschließen
echo "\t</channel>\n";
echo " </rss>\n";
?>