designsubway Posted January 29, 2010 Share Posted January 29, 2010 Hi all. First of all I must say I am not a php developer so I am afraid I don't know much about it. I am using the bloging software on my site called Super Simple Blog. This software includes a file called feed_maker.php which I have posted below: <?php /******************************************** feed_maker.php This class is used for generating an RSS feed. ********************************************/ class GenerateFeed{ var $TABLENAME; var $websiteRoot; var $pageTitle; var $rssDesc; var $rssLink; var $rssFileName; var $blogPageName; function makeFeed($table, $webroot, $title, $desc, $link, $rssfile){ $this->TABLENAME = $table; $this->websiteRoot = $webroot; $this->pageTitle = $title; $this->rssDesc = $desc; $this->rssLink = $link; $this->rssFileName = $rssfile; //empty array which will be pushed all of the //possible images for the home page. //These are displayed when the page loads. $spl = array(); // Query the database. $query = "SELECT * FROM $this->TABLENAME ORDER BY uid DESC"; $result = mysql_query ($query); //init a counter $i = 0; while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { $spl[$i] = $row; $i++; $ima = split(", ", $row['image']); //build array out of images list $com = nl2br($row['comment']); //if there is more than 1 image per entry for($h=0; $h<count($ima); $h++){ $j = $h+1; if($imagesPerEntry != 1){ if(substr($ima[$h],-4) != '.pdf'){ //filter out PDFs $com = str_replace("[$j]", "<img src=\"$this->websiteRoot/blogImages/$ima[$h]\" />", $com); } } if($imagesPerEntry == 1){ if(!empty($ima[$h])) { if(substr($ima[$h],-4) != '.pdf'){ //filter out PDFs $com = str_replace("[$j]", "<img src=\"$this->websiteRoot/blogImages/$ima[$h]\" />", $com); } } } } //output the database //each row will be 1 item $addBlock .= "\n\n<item> \n <title>{$row['title']}</title> \n <link>$this->rssLink?entry={$row['uid']}</link> \n <description><![CDATA[$com]]></description> \n </item>\n\n"; } // Write the three blocks to file //this is the file that we are writing $fileT = $this->rssFileName; $fileT = fopen($fileT, "w"); //start off every feed with this $startBlock = <<<EOR <?xml version="1.0"?> <rss version="2.0"> <channel> <title>$this->pageTitle</title> <description>$this->rssDesc</description> <link>$this->rssLink</link> EOR; //end every feed with this $endBlock = "</channel>\n\n</rss>"; fwrite($fileT, $startBlock); fwrite($fileT, $addBlock); fwrite($fileT, $endBlock); fclose($fileT); //end of method } //end of class } ?> This file creates an rss feed from my blog. My question is; would it be possible to add some code to this file which would give each item in the feed its own time and date stamp, for example; <pubDate>Fri, 15 Jan 2010 12:00:00 +0000</pubDate> I can't find any support for this feed_maker.php file so that is why I have come here. Thanks in advance. Quote Link to comment Share on other sites More sharing options...
ignace Posted January 29, 2010 Share Posted January 29, 2010 Try this don't forget to change {$row['pubDate']} to the appropriate column name maybe even calling an appropriate function to properly format the output $addBlock .= "\n\n<item> \n <title>{$row['title']}</title> \n <link>$this->rssLink?entry={$row['uid']}</link> \n <pubDate>{$row['pubDate']}</pubDate> \n <description><![CDATA[$com]]></description> \n </item>\n\n"; Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.