Helping people with computers... one answer at a time.

You often see recent blog entries listed on web pages. If those pages weren't generated by the original blogging software, it's a little tricky to do.

How can I list blog entries on my non-blog web page?

The short answer is that I'm afraid it's not just some simple HTML. It will take some server-side code to do it. The good news is that since most blogging software now automatically provides an RSS feed in one form or another, that feed is a great source for what you want to display. The additional code on your server transforms that feed into HTML that works on your site and then you display the results.

If your pages are already being generated by something dynamic like PHP or ASP, then the best way to accomplish what you want is to add the transformation code to the desired page directly. As one example I've included an VBScript function below, displayRSS, that I've used in ASP pages. It takes pointers to an RSS Feed and an XSLT transformation applies the transformation and returns the results for display. XSLT is a programming language highly optimized for transforming structured XML data, which is what an RSS feed is, into other forms such as HTML. A simple transformation can return all or portions of the information contained within the feed.

If your pages are static you're not sunk as long as you have access to some form of CGI to run server-side code. I've created an example Perl script, grabrss.pl, that runs as a CGI that will transform an RSS feed into an HTML bullet list. As an alternative to using XSLT, grabrss uses only an XML parser and pulls apart the component fields we might care about and pushes out the HTML as a series of jscript "document.writeln" statements. In your static HTML page just include:

<script language="jscript" src="http://yourserver/cgibin/grabrss.pl"> </script>

This will include the script and execute it in place resulting in the HTML bullet list being displayed. As I said, grabrss is an example. I'm sure not everyone wants a bullet list, but it should be easy to modify to output the HTML specifics that you want.

You can get a copy of grabrss.pl here.

DisplayRSS, the ASP sample, follows here:

Function displayRSS(ByVal strSource, ByVal strXSL)
    Dim xmlHTTP, xmlRSSSource, xmlStyle
    Dim strXSLFile

    ' Use the XMLHTTPConnection object to grab the feed
    Set xmlHTTP = Server.CreateObject("Microsoft.XMLHTTP")
    xmlHTTP.Open "GET", strSource, False
    xmlHTTP.Send

    ' Load the feed into a DOM object
    Set xmlRSSSource = Server.CreateObject("Microsoft.XMLDOM")
    xmlRSSSource.async = False
    xmlRSSSource.loadXML(xmlHTTP.ResponseText)

    ' Load the XSL style sheet
    strXSLFile = Server.MapPath(strXSL)
    Set xmlStyle = Server.CreateObject("Microsoft.XMLDOM")
    xmlStyle.async = False
    xmlStyle.load(strXSLFile)

    ' Render the feed using the style sheet
    displayRSS = xmlRSSSource.transformNode(xmlStyle)

    ' Release resources
    Set xmlStyle = Nothing
    Set xmlRSSSource = Nothing
    Set xmlHTTP = Nothing
End Function

Article C1844 - September 26, 2003 « »

Share this article with your friends:

Share this article on Facebook Tweet this article Email a link to this article
Leo Leo A. Notenboom has been playing with computers since he was required to take a programming class in 1976. An 18 year career as a programmer at Microsoft soon followed. After "retiring" in 2001, Leo started Ask Leo! in 2003 as a place for answers to common computer and technical questions. More about Leo.

Not what you needed?

6 Comments
erik@turnek.com
May 6, 2004 5:18 PM

Thank you for good code. i'am completely agree with author that "it's not just some simple HTML". Use this code take a lot of time from me.

Pankaj Jangid
October 8, 2005 9:16 PM

This is a wonderful tiny script. I am using modified version of this script to grab my LJ entries on my home page. The page is not online now but will be in a day or two. -- Thank you very much for providing this

-Pankaj
http://jangid.freeshell.org/

ELO
October 18, 2005 9:53 AM

LEO How can I start a softball blog? Blog novice here. elo

Leo
October 18, 2005 2:10 PM

I'd start with one of the services like TypePad.com or blogger.com

Ashish
February 25, 2006 2:22 AM

i am using open source library MagpieRSS to show my blog post on my web page.

http://www.aknamdeo.com/wordpress/?p=17

Love Poems
February 8, 2011 10:55 PM

hmmmm but i am using very simple way to write anything at my blog i am not familiar with HTML coding, author can you guide me how can i use html coding at my blog at very simple way?

Thanks
Love Poems

Comments on this entry are closed.

If you have a question, start by using the search box up at the top of the page - there's a very good chance that your question has already been answered on Ask Leo!.

If you don't find your answer, head out to http://askleo.com/ask to ask your question.