Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeUsing DNN Platf...Using DNN Platf...Skins, Themes, ...Skins, Themes, ...Skinning in DNN 4.3.5Skinning in DNN 4.3.5
Previous
 
Next
New Post
9/30/2006 12:04 PM
 
As mentioned, the docs included (though they mention 4.3.1) are the most current available.

I'm not aware of a comprehensive skin tutorial though I'm sure there are many.

I don't know if you're primarily designer/developer or somewhere in between but as a quick overview:

While we all create skins by writing a bit of html/css there are 2 ways to continue once we've figured out the basic look:

1. convert it to an .ascx file - containing the 'tags' (eg <dnn:login runat='server' id='dnnlogin'> )referring to the 'skin objects' (eg login, menu, copyright etc) and with the attributes for these skinobjects contained in the tags

or

2. convert it to an xml/html pair - with a 'token' (eg [login]) in the html and the attributes for that token in the xml file.  The xml file only contains tokens which you use and only the attributes you wish to assign.

---
I use the ascx method since I'm marginally more of a developer than designer (though I love design).
When you add a skinobject to the ascx file there are 2 entries to make.  One at the top of the file under the page directive that looks something like <%@ Register TagPrefix="dnn" TagName="LOGIN" Src="~/Admin/Skins/Login.ascx" %>.  Then in the html below you insert <dnn:LOGIN id="dnnLogin" runat="server" /> and the login link will be rendered at that point on the page.

If you look at the documentation you will get a complete list of skin objects and properties.  You'd just change 'login' in the lines I mentioned to 'breadcrumb' or whatever skin object you use.

---
The 'columns' are totally configurable.  All you need to do is define one main content area called 'ContentPane'.  All other 'panes' are optional and may be positioned in any order.  Creating one of these content areas is as simple as inserting a few attributes into an html tag...

<div id="ContentPane" runat="server">

usually you'd add the
class="contentpane" in there too so that you can style it.

Want another pane? 

<div id="InfoPane" runat="server">
 or
<div id="whatever" runat="server">

I'm not aware of a skin editor (which doesn't mean much).

And do have a google for dnn skin tutorials.  I'm sure you'll find something more if you still need it.

/Brian C
 
New Post
10/2/2006 12:39 AM
 

Hi Brian - thanx, this is useful, it makes for a start.

But I still wonder what the XML file is doing in a skin and what I need (or need not) to configure there. I'd welcome some pointers on that subject too.

 
New Post
10/2/2006 10:20 AM
 

If you refer to the Sample Skin in the docs, it's not a real skin.  The code for it is in the docs.

As for the XML, it's for the attribute specifications of the skin objects you put in your skin.  If you use an ASCX file, these are the attributes assigned in the ASCX for each token, such as the ID for a ContentPane.  If you're basing your skin on an existing one, and not changing the attributes of the tokens or not adding new tokens, you really don't need to change anything.  I'd personally remove unused tokens, but you don't have to for the XML to work.  Some designers work totally in an ASCX file, but most I've talked to will work with both HTML and tweaking the ASCX.

Jeff

 
New Post
10/2/2006 12:16 PM
 
As Jeff said, "...the XML, it's for the attribute specifications of the skin objects you put in your skin. "

So if you don't use the ascx method to create the skin then you need an html document that has your tokens (eg [breadcrumb]) then the xml contains the properties for that token (eg.

<Objects>
    <Object>
        <Token>[Breadcrumb]</Token>
        <Settings>
            <Setting>
                <Name>
CssClass</Name>
                <Value>mybreadcrumbclass</Value>
            </Setting>
        </Settings>
    </Object>
.
.
.
</Objects>

The XML file is used when the skin is uploaded and DotNetNuke takes all these values and inspects your html file and does a fancy little conversion that creates an ascx to be used with your skin (so that you don't have to do it).

The XML/Html file was a way of allowing pure designers to create a layout with simple 'tokens' to mark where they wanted certain functional units (skin objects) that are to be replaced by the developer.  To make the developer's job easier in his/her interactions with the designer, they create a separate XML file that configures the tokens from the html during the skin upload.

Of course, if you're designer AND developer then you have to do both.  And perhaps you'll end up just doing the ascx file in the first place.

/Brian C
 
New Post
10/2/2006 5:23 PM
 

Hi Psiegers,

If you've some problem to create the xml file for html document you can find help using the Yannick's SXE. It's winform application and absolutely free!

http://skinobjects.purplebox.be/SXE/tabid/139/Default.aspx

 

 
Previous
 
Next
HomeHomeUsing DNN Platf...Using DNN Platf...Skins, Themes, ...Skins, Themes, ...Skinning in DNN 4.3.5Skinning in DNN 4.3.5


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out