Grow your CSS skills. Land your dream job.

Last updated on:

RSS Generator

You'll need a MySQL database with a a table called `rss_feed`. In that table there are 3 colums: item title (which is the name a person will see for an item), the item link (which is the location of the page with the item on it), and description (which tells what the feed is about). Put the file in a folder called feed and you're feed will be available at yoursite.com/feed

Remember to change the feed title, link and image for your specific feed.

<?php
   
   // Connect to database... (you'll need to create this yourself)
   require_once $_SERVER['DOCUMENT_ROOT'] . '/includes/connection.php';

   // Run query...
   $getFeed = mysql_query("SELECT *
                           FROM `rss_feed`
                           ORDER BY `time` DESC
                           ")or die(mysql_error());

   // Output XML (RSS)
    echo '<?xml version="1.0" encoding="ISO-8859-1" ?>
          <rss version="2.0">
                <channel>
                        <title>Your RSS Title</title>
                        <link>http://the_location_of_your_feed/feed</link>
                        <description>Description of your Feed</description>
                        <language>English</language>
                        <image>
                                <title>website Logo</title>
                                <url></url>
                                <link>Link to image</link>
                                <width>width</width>
                                <height>height</height>
                        </image>';
						while($rssFeed = mysql_fetch_array($getFeed)) {
        					 echo '<item>',
					              '<title>', $rssFeed['item_title']</title>',
					              '<link>', $rssFeed['link'], '</link>',
					              '<description><![CDATA[ ,$rssFeed['description'],']]></description>
								   </item>';

 						}
				echo '</channel>
        </rss>';

?>

Comments

  1. Dan
    Permalink to comment#

    PHP Code for the mysql connection:

    mysql_connect(‘host’, ‘username’, ‘password’);
    mysql_select_db(‘dbname’);

  2. Permalink to comment#

    Hi,

    I can’t seem to get this to work… When I get the feed in my reader, if just output this:

    ”, $rssFeed[‘item_title’]’,

    instead of the actual title.

    I’m using Coda and when I place the script it looks as if everything up until “” is commented out.. (green text).

    Got an idea what I’m doing wrong?

    Thanks

    /Frederik

  3. Permalink to comment#

    OK got it working now. I had to give the file a .php suffix, and send a content-type header to serve it up as XML. Also it seemed there was some syntaxt errors in the echo, so I replaced some “,” with some “.” and added some “‘”

    Here’s what I got:

    <?php
    //Parse the php file as xml
    header('Content-Type: text/xml');
    
    //incude database connection info
    include('../inc/db.php');
       // Run query...
       $getFeed = mysql_query("SELECT * FROM `rss_feed` ORDER BY id DESC")or die(mysql_error());
    
       // Output XML (RSS)
        echo '
              
                    
                            Your RSS Title
    
    http://the_location_of_your_feed/feed
    
                            Description of your Feed
                            English
                            
                                    website Logo
                                    
                                    Link to image
                                    width
                                    height
                            ';
    						while($rssFeed = mysql_fetch_array($getFeed)) {
            					 echo ''.
    					              ''.$rssFeed['item_title'].'',
    					              ''.$rssFeed['link']. '',
    					              '
    								   ';
    
     						}
    				echo '
            ';
    
    ?>
  4. Stupid question. I created this and my pages aren’t actually showing up on the rss feed. Anyone know why OR how I can make them start to show up in there?

    http://kissweddingguide.com/feed.php

  5. Permalink to comment#

    Thanks very much for share.

  6. Permalink to comment#

    Good sample, but I think you need to escape some symbols in description and title.

  7. @doser, good finding i tried it and facing some problems with extra chars.
    ————-
    Lightrains Technolabs

  8. Hey there, purely realize a person’s blog site through Yahoo, determined that it is truly insightful. Let me look out for belgium’s capital. I am going to take pleasure in for many who proceed this kind of in future. Several individuals might be helped out of your creating. Many thanks!

  9. Permalink to comment#

    If you desire to grow your know-how just keep visiting this site and
    be updated with the most up-to-date gossip posted here.

Leave a Comment

Posting Code

Markdown is supported in the comment area, so you can write inline code in backticks like `this` or multiline blocks of code in in triple backtick fences like ```this```. You don't need to escape code in backticks, Markdown does that for you.

Sadly, it's kind of broken. WordPress only accepts a subset of HTML in comments, which makes sense, because certainly some HTML can't be allowed, like <script> tags. But this stripping happens before the comment is processed by Markdown (via Jetpack). It seems to me that would be reversed, because after Markdown processes code in backticks, it's escaped, thus safe. If you think you can fix this issue, get in touch!

If you need to make sure the code (typically HTML) you post absolutely posts correctly, escape it and put it within <pre><code> tags.

Current ye@r *

*May or may not contain any actual "CSS" or "Tricks".