So, I am by no means an expert at XML/XSL. In fact, because it took me two freaking days to figure out how to do this, I thought I would share my technique with others.
We have a GuildPortal site: http://impulse.totalgamehost.com
I wanted to be able to have the Activity List show on our homepage. You need to be able to access the Guild Control Panel to do this. I am pretty sure you have to have a PAID account as well.
1. Go to http://wowfeeds.wipeitau.com/ and generate your Guild Activity Feed as XML (not JSON or HTML). -- you end up with a link like this: http://wowfeeds.wipeitau.com/GuildActivity.php?location=US&rn=Kilrogg&gn=Impulse&output=XML&callback=?
2. Here's a sample XSL file to "translate" your XML document: *PLEASE NOTE* I am not an XML person, this code could very well suck rocks. However, it does WORK. That's all I really cared about.
<?
xml
version
=
"1.0"
encoding
"ISO-8859-1"
?>
<
xsl:stylesheet
xmlns:xsl
"http://www.w3.org/1999/XSL/Transform"
>
xsl:variable
name
"lower"
abcdefghijklmnopqrstuvwxyz
</
"upper"
ABCDEFGHIJKLMNOPQRSTUVWXYZ
xsl:template
match
"/"
center
><
h1
>GUILD LEVEL: <
xsl:apply-templates
select
"GUILDACTIVITY/GUILDLEVEL"
/></
></
table
border
"0"
cellpadding
"5"
xsl:for-each
"GUILDACTIVITY/ACTIVITYLIST/ACTIVITYITEM"
tr
td
a
href
"http://us.battle.net/wow/en/character/kilrogg/{NAME}/simple"
target
"_blank"
xsl:value-of
"NAME"
"http://www.wowhead.com/{translate(TYPE,$upper,$lower)}={NUMID}"
IMG
SRC
"{ACHIMAGE}"
align
"middle"
"ACHOBJECTIVE"
"TYPE"
"ACHTIME"
small
p
"http://wowfeeds.wipeitau.com/"
>Axho WoW Feeds</
* Save the above text as a file called yourguild.xsl . My file is called "impulse.xsl".
Explanation of the above: This will show your Guild Level, the Name of the person with the Achivement (linked to his/her BattleNet Profile), an Image for the Achievement (linked to the Achievement on WowHead), Text for the Achievement (linked to the Achievemnt on WowHead), the type of the achievement, and the time of the achivement. It also gives a courtesy link to Axho's WoW Feeds.
3. Go to Guild Portal, click on your Control Panel. - Click on "General Settings & Tools" - Click on File Manager - Upload yourguild.xsl - Click on "Get URL" once it's uploaded, and save that link for later.
4. In your Control Panel, click on "Pages & Content (Widgets)". - Find which page you want to put your new Feed on. I put mine on "HOME". - Click on that page section, then click on "Add Widget". - You'll see a list with a little search box. Type "XML" into the search box and press enter/return. - You'll see a Widget called XML/XSL Transformation. You want to "Add to site".
5. Now you want to change the settings for your new Widget. - on the first tab, XML Source, check "Remote File" and the XML File URL is the link from your Axho's Wow Feeds page. - My link, for example, is: http://wowfeeds.wipeitau.com/GuildActivity.php?location=US&rn=Kilrogg&gn=Impulse&output=XML&callback=? - Click on the second tab, XSL Source, check "Remote File" and you want to paste in your URL you generated in Step 3. - My link looks like: http://www.axiomfiles.com/Files/123456/impulse.xsl - Click "Test Transform" to make sure there are not any errors. - Save Changes
*PLEASE NOTE* (Since I learned this the hard way). The "paste" box for the XSL does NOT work. You cannot just paste your code in, you have to link to a remote file. It's an old bug apparently from reading the GuildPortal forums. You need to do Step 3 and upload the file or you are going to be banging your head against this for hours.
6. Position your new widget where you want it.
7. Profit!
I hope this helps people.
~Jib