In this tutorial I will show some tips on how to create an RSS Feed in coldfusion by querying a Database.
This example will demonstrate how to create an RSS Feed for the quote of the day.
< cfquery name="qname" datasource="dbsource" maxrows="3">
SELECT PUBDATE,DESCR,FTITLE,LINK FROM wiki.url.rssfeed order by id desc
</cfquery>
<!--- Note here the query returns only the last three quotes and also it is sorted based on the id which is an auto increment ID.--->
<cfscript>
myStruct = StructNew();
mystruct.link = "http://blog.abusalah.info";
myStruct.title = "Mustafa Abusalah Quote of the Day";
mystruct.description = "Quote of the Day Tutorial";
mystruct.pubDate = Now();
mystruct.version = "rss_2.0";
<!--- Now the Query columns must be mapped to the RSS columns this is done by creating a struct and mapping them to the struct variables. Please not that the fields must be written in capital letters don't ask me why.--->
columnMapStruct = StructNew();
columnMapStruct.publisheddate = "PUBDATE";
columnMapStruct.content = "DESCR";
columnMapStruct.title = "FTITLE";
columnMapStruct.rsslink = "LINK";
</cfscript>
<!--- The last step is to Generate the xml file using the CFFEED--->
<cffeed action = "create"
query= "#qname#"
properties="#mystruct#"
columnMap="#columnMapStruct#"
outputFile = "quoteFeed.xml"
overwrite = "yes"
xmlVar = "myXML">
Now to see the RSS Feed result in your browser simply browse quoteFee.xml or call the following function from your CFML code:
<cffeed source = "quoteFee.xml"
properties = "myProps"
query = "myQuery">
Then print the output of the query.
This example will demonstrate how to create an RSS Feed for the quote of the day.
< cfquery name="qname" datasource="dbsource" maxrows="3">
SELECT PUBDATE,DESCR,FTITLE,LINK FROM wiki.url.rssfeed order by id desc
</cfquery>
<!--- Note here the query returns only the last three quotes and also it is sorted based on the id which is an auto increment ID.--->
<cfscript>
myStruct = StructNew();
mystruct.link = "http://blog.abusalah.info";
myStruct.title = "Mustafa Abusalah Quote of the Day";
mystruct.description = "Quote of the Day Tutorial";
mystruct.pubDate = Now();
mystruct.version = "rss_2.0";
<!--- Now the Query columns must be mapped to the RSS columns this is done by creating a struct and mapping them to the struct variables. Please not that the fields must be written in capital letters don't ask me why.--->
columnMapStruct = StructNew();
columnMapStruct.publisheddate = "PUBDATE";
columnMapStruct.content = "DESCR";
columnMapStruct.title = "FTITLE";
columnMapStruct.rsslink = "LINK";
</cfscript>
<!--- The last step is to Generate the xml file using the CFFEED--->
<cffeed action = "create"
query= "#qname#"
properties="#mystruct#"
columnMap="#columnMapStruct#"
outputFile = "quoteFeed.xml"
overwrite = "yes"
xmlVar = "myXML">
Now to see the RSS Feed result in your browser simply browse quoteFee.xml or call the following function from your CFML code:
<cffeed source = "quoteFee.xml"
properties = "myProps"
query = "myQuery">
Then print the output of the query.
Comments
Post a Comment