Displaying XML Data on a Radio UserLand Weblog

Peter Backx has created a UserTalk script that displays random pictures on the homepage of his Radio UserLand weblog.

The script's a nice, straightforward example of how to use UserTalk to read XML data from a file and do something with it.

I have modified his script to create a random text link that can be displayed on any Radio Web page. The link will be updated each time the page is republished, displaying a different link from an XML file called randomtextlinks.xml

Here's the script:

on randomTextLink() {
  «5/11/03; 11:08:43 AM by Rogers Cadenhead     «http://www.cadenhead.org/workbench     «Based on the randomLink script by Peter Backx       «http://radio.weblogs.com/0118796/stories/2003/02/19/randomLinkForRadioUserland.html     «Modified to support text links instead of pictures   local (s = "", pc = file.getPathChar ());   local (f = user.radio.prefs.wwwfolder + pc + "gems" + pc + "randomtextlinks.xml");   local (table);   xml.compile (file.readWholeFile (f), @table);   local (adrlinks=xml.getAddress(@table, "links"));   local (ltable=xml.getAddressList(adrlinks, "item"));   local (i = random(1,sizeof(ltable)));   local (name = xml.getAttributeValue(ltable[i],"name"));   local (url = xml.getAttributeValue(ltable[i],"pagename"));   s=""+name+"";   return s; }

To use the script:

  • Download the file workspace.randomTextLink.ftsc.
  • Open the Radio application (in Windows, right-click Radio in the System tray and choose Open Radio).
  • In Radio, choose the menu command File, Open, then find and open the file you just downloaded.
  • Radio asks if the file should be imported as workspace.randomTextLink. Click OK.
  • In your /www/gems folder, create an XML file called randomtextlinks.xml that contains a URL and text for one or more links (or use mine).

After the script has been installed and the XML file has been created, you can put the text <%workspace.randomTextLink()%> on any Web page or page template to call the macro, which displays a randomly selected link.

Add a Comment

All comments are moderated before publication. These HTML tags are permitted: <p>, <b>, <i>, <a>, and <blockquote>. This site is protected by reCAPTCHA (for which the Google Privacy Policy and Terms of Service apply).