Dear Yurol,
Assuming you are running on an IIS Server (Windows Server 2000 and
above), including an RSS feed on your site is as simple as pie.
Here is the code for a new page you must create - the RSS feed
"gatherer" page (save it as, say, inc_rss.asp):
------------------------------
<%
Response.Expires = -1
FEEDSRC_RSS = "
http://example.com/rss.xml" 'feed location
MaxNumberOfItems = 10 'number of feed entries to show
MainTemplateHeader = "<table>"
MainTemplateFooter = "</table>"
Keyword1 = "" 'keywords from feed
Keyword2 = ""
ItemTemplate = "<tr><td><a target=blank href=" & """{LINK}""" &
">{TITLE}</a><BR>{DESCRIPTION}</td></tr>"
ErrorMessage = "Data error from feed: " &FEEDSRC_RSS & "<BR><a
href=""mailto:
[email protected]"">Please inform the webmaster.</a>"
Set xmlHttp = Server.CreateObject("MSXML2.XMLHTTP.3.0")
xmlHttp.Open "Get", FEEDSRC_RSS, false
xmlHttp.Send()
RSSXML = xmlHttp.ResponseText
Set xmlDOM = Server.CreateObject("MSXML2.DomDocument.3.0")
xmlDOM.async = false
xmlDOM.LoadXml(RSSXML)
Set xmlHttp = Nothing
Set RSSItems = xmlDOM.getElementsByTagName("item")
Set xmlDOM = Nothing
RSSItemsCount = RSSItems.Length-1
if RSSItemsCount > 0 then
Response.Write MainTemplateHeader
End If
j = -1
For i = 0 To RSSItemsCount
Set RSSItem = RSSItems.Item(i)
for each child in RSSItem.childNodes
Select case lcase(child.nodeName)
case "title"
RSStitle = child.text
case "link"
RSSlink = child.text
case "description"
RSSdescription = child.text
End Select
next
If (InStr(RSSTitle,Keyword1)>0) or (InStr(RSSTitle,Keyword2)>0) or
(InStr(RSSDescription,Keyword1)>0) or
(InStr(RSSDescription,Keyword2)>0)
then
j = J+1
if J<MaxNumberOfItems then
ItemContent = Replace(ItemTemplate,"{LINK}",RSSlink)
ItemContent = Replace(ItemContent,"{TITLE}",RSSTitle)
Response.Write Replace(ItemContent,"{DESCRIPTION}",RSSDescription)
ItemContent = ""
End if
End If
Next
if RSSItemsCount > 0 then
Response.Write MainTemplateFooter
else
Response.Write ErrorMessage
End If
%>
--------------------------------
Remember to change every use of "example.com" above to the parameters
you want, and the FEEDSRC_RSS to the xml location. Save it as
inc_rss.asp - the last step is easy. Anywhere you want to display your
feed, just include this code:
<!--#include virtual="inc_rss.asp" --> like this:
---------------------------------
<html>
<head>
<title>My Feed</title>
</head>
<body>
<p>Here is a feed:</p>
<!--#include virtual="inc_rss.asp" -->
</body>
</html>
-----------------------------------------
Make sure that the page you use the feed on has an extension of
".asp", like default.asp - .htm extensions don't execute asp code. You
can rename any htm page to asp without problems on an IIS server. Good
luck, Yurol.
Nicholas Savalas -
http://savalas.tv