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:
«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 ).
- In Radio, choose the menu command , then find and open the file you just downloaded.
- Radio asks if the file should be imported as workspace.randomTextLink. Click .
- 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.