function mkRSS () {
//CONFIGURATION
$news_aid = 54; //ARTICLEID OF NEWSARTICLE
$news_alias = "artikel"; //ARTICLEALIAS OF NEWSARTICLE
$title = "RSS FEED";
$description = "Newsfeed - ".$_SERVER['SERVER_NAME'];
//END OF CONFIGURATION
//=======================================================
require_once ('config/phpwcms/conf.inc.php');
$itemTitle = "cnt_title";
$itemText = "cnt_teasertext";
$itemDate = "cnt_created";
$itemOwner = "cnt_editor";
$itemAlias = "cnt_alias";
$sql="SELECT * FROM phpwcms_content WHERE cnt_module = 'news' AND cnt_status = 1 ORDER BY cnt_created DESC;";
//Erzeugen des RSS-Inhaltes: encoding='UTF-8'
$rssHeader='
'.$title.'
'.$description.'
'.$phpwcms['default_lang'].'
'.$phpwcms['site'].'
';
$rssFooter='
';
//GET DATA
$dbLink = mysql_connect ($phpwcms['db_host'],$phpwcms['db_user'],$phpwcms['db_pass']) or die (mysql_error());
$setdb = mysql_select_db($phpwcms['db_table'],$dbLink) or die (mysql_error());
$result=mysql_query($sql,$dbLink) or die(mysql_error());
$content=$rssHeader;
while($row=mysql_fetch_array($result)){
$row[$itemText] = str_replace("ü","ü",$row[$itemText]);
$row[$itemText] = str_replace("ü","ü",$row[$itemText]);
$row[$itemText] = str_replace("ö","ö",$row[$itemText]);
$row[$itemText] = str_replace("ä","ä",$row[$itemText]);
$row[$itemText] = str_replace("ä","ä",$row[$itemText]);
$row[$itemText] = str_replace("ß","ss",$row[$itemText]);
$row[$itemText] = str_replace("","",$row[$itemText]);
$row[$itemText] = str_replace("
","",$row[$itemText]);
//$row[$itemText] = str_replace(" />",">",$row[$itemText]);
//$row[$itemText] = str_replace("
","",$row[$itemText]);
//$row[$itemText] = str_replace("","",$row[$itemText]);
//$row[$itemText] = preg_replace("()","",$row[$itemText]);
$titel=substr ($row[$itemTitle], 0, 150);
$text=substr ($row[$itemText], 0, 1000);
$itemLink= $phpwcms['site'];
$itemdate1 = date("Ymd", $row[$itemDate]);
$itemDate2 = date("D, d M Y H:i:s O", $row[$itemDate]);
$itemLink = $phpwcms['site'].'index.php?'.$news_alias.'&newsdetail='.$itemdate1.'-'.$news_aid.'_'.rawurlencode($row[$itemAlias]);
$content .= "-
".$titel."
$itemLink
$row[$itemOwner]
$itemDate2
";
}
$content.=$rssFooter;
htmlspecialchars($content);
header('Content-Type: text/xml');
print($content);
return;
}
mkRSS();
?>
//
//
==== V1.4 ====
Diese Version speichert eine Datei im jeweils angegebenen Order ab. Generierung kann bspw. durch einbettung in die index.php erreicht werden.
Einstellungen müßen im GESAMTEN script vorgenommen werden.
function mkRSS () {
require_once ('config/phpwcms/conf.inc.php');
////KONFIGURATION (diese Variablen müssen angepasst werden):
$dbServer = $phpwcms['db_host']; // meist localhost)
$dbName = $phpwcms['db_table']; // name der Datenbank
$dbUser = $phpwcms['db_user']; // Datenbankbenutzer
$dbPassword = $phpwcms['db_pass']; // Passwort
$tableName = "phpwcms_content"; // Tabellenname der Tab., aus der die Daten entnommen werden
//$lines="10"; // Anzahl anzuzeigender Datensätze
$filename = "content/rss/news"; // zum Beispiel news !! ohne Extension !!
$title = "News"; // Titel des RSS-Feeds
$description = "Newsfeed - ".$_SERVER['SERVER_NAME']; //Was zeigt das RSS-Feed?
$language= $phpwcms['default_lang']; //Sprachkürzel
$link = $phpwcms['site']; //Link
$itemTitle = "cnt_title"; //Spaltenname aus der DB, wo der Titel des einzelnen Items steht
$itemText = "cnt_teasertext"; //Spaltenname aus der DB, wo der Text des einzelnen Items steht
// das SQL-Statement muss an die eigenen Erfordernisse angepasst werden
$sql="SELECT *
FROM `phpwcms_content`
WHERE cnt_module = 'news'
AND cnt_status = '1';";
// Bitte beachten, dass in der Zeile 45 noch die Variable $itemLink angepasst werden muss.
// ENDE KONFIGURATION
// DOCUMENT_ROOT wird automatisch ermittelt
$siteRoot = substr_replace ($_SERVER[DOCUMENT_ROOT].$_SERVER["PHP_SELF"],
"",strrpos ($_SERVER[DOCUMENT_ROOT].$_SERVER["PHP_SELF"], "/")+1);
//Erzeugen des RSS-Inhaltes:
$rssHeader="
".$title."
".$description."
".$language."
$link
";
$rssFooter="
";
$dbLink = mysql_connect ($dbServer,$dbUser,$dbPassword) or die (mysql_error());
$setdb = mysql_select_db($dbName,$dbLink) or die (mysql_error());
$result=mysql_query($sql,$dbLink) or die(mysql_error());
$content=$rssHeader;
while($row=mysql_fetch_array($result)){
$row[$itemText] = str_replace("ü","ü",$row[$itemText]); // ersetzt im Feed ü durch ü
$row[$itemText] = str_replace("ü","ü",$row[$itemText]);
$row[$itemText] = str_replace("ö","ö",$row[$itemText]);
$row[$itemText] = str_replace("ä","ä",$row[$itemText]);
$row[$itemText] = str_replace("ä","ä",$row[$itemText]);
$row[$itemText] = str_replace("ß","ss",$row[$itemText]);
$row[$itemText] = str_replace("","",$row[$itemText]);
$row[$itemText] = str_replace("
","",$row[$itemText]);
//$row[$itemText] = str_replace(" />",">",$row[$itemText]);
//$row[$itemText] = str_replace("
","",$row[$itemText]);
//$row[$itemText] = str_replace("","",$row[$itemText]);
//$row[$itemText] = preg_replace("()","",$row[$itemText]);
$titel=substr ($row[$itemTitle], 0, 150); //$row anpassen! auch in der nächsten Zeile
$text=substr ($row[$itemText], 0, 1000); //der Text darf höchstens 500 Zeichen lang sein
$itemLink= $phpwcms['site']; //dies ist ein Link, der DIREKT diesen Punkt auf der Homepage öffnet.
//Er muss entsprechend deines Scripts dynamisch gebildet werden.
$content.="-
".$titel."
$itemLink
";
}
$content.=$rssFooter;
// Datei wird geschrieben
$fh=fopen ($siteRoot.$filename.".rss", "w");
fputs ( $fh, $content);
fclose($fh);
// Datei wird umbenannt
rename ($siteRoot.$filename.".rss", $siteRoot.$filename.".xml");
return;
}
mkRSS();
?>