Hey David,
You're on the right track for sure. There is a little more to it than that. I'm not sure if you are familiar with .ASCX or XML, but I'm going to give you a quick explanation in case. this should make it much more clear as to what is happening.
When I think of DotNetNuke skins, I don't really consider the HTML page a skin at all. It's more, the tool you use to tell DotNetNuke HOW to make the skin you want. The skin that DNN uses is actually an .ascx file. You don't need to know anything about ascx files at all, so don't get nervous if it sounds strange :->
Basically though, in an ascx file there are tags just like HTML, and some special tags that cause all kinds of neat functions.
In HTML you would write something like to change a font color. You do the same in ASCX(by the way, ascx is what .NET is about...kinda).
So in the DotNetNuke world, the folks who so generously build us this great package to use, created "controls" or prewritten little chunks of code to handle things like logging in and out, displaying dynamic content. these codes are more ascx files.
Most of us know html best, and xml isn't hard to figure out. So lets say, you want to display a menu, the creators of DotNetNuke made it already(we'll just say they did, or someone who loves them did :->). Anyhow how to do you tell the menu to display horizontal or vertical?
If you were writing an ASCX file, you problem guessed it already, you'd do something like (don't try that..it won't work..just making a point).
But you know already, we need to use a token in the HTML file. the token can be [MENU] [NAV] OR [SOLPARTMENU] or any third parties you wish to install. So...how now do I tell DNN that it's horizontal or vertical??? it's not a standard tag is it?
The method is simple, and the reason is even better. you put the "settings" for the tokens in an XML file. Take a look at the blue skins that came with your DotNetNuke. You'll see xml, ascx, html, and some other junk. Open up the XML file and read it line by line. you'll notice somethign cool. Standard settings that you'd need to type in every skin are there. it's easier to write in HTML, and reuse your XML file for many skins, rather than write the whole thing in ASCX and try to remember all your settings every time. This is what is so great about how dotnetnuke is structured. The creators and community made things work so that our job is easy, if we just have a little patience and try to understand what looks strange at first.
So...
You are right, you create the HTML file, using tokens, then you create an XML file of the same name with the specs for your tokens. Be sure to save your first .xml file so you can reuse it in other skins, or just copy the blue one, and tweak it a bit.
When you upload your skin package, DNN will "parse" it, and make the tokens into the proper tags automatically, if you have all your files correct.
You're gunna love it!
Josh
Josh Martin
|