Umbraco - XSLT - Create a link using a Node Number.

In Umbraco XSLT you can create a link using a node number, instead of the actual node name / page url.  This can help when you may be creating static code to link to a page.  Using the node number means, if a user changes the name of the page, the link will not break!

1) So, instead of having something like this on your XSLT:

<li><a href="news.aspx" title="News">View All News</a></li>

2) You would have this: (Using the Node Number in a Link)
<li><a href="1569.aspx" title="News">View All News</a></li>

However, this will show 1596.aspx in the address bar.

3) So, use the following to show the proper url, such as news.aspx you would use the Local Link property in Umbraco:
<li><a href="/{locallink:1569.aspx}" title="News">View All News</a></li>
(You can get the node number of a page by hovering over it in Umbraco).

Other examples:

<xsl:value-of select="umbraco.library:NiceUrl(./parent::node/@id)"/>

<xsl:value-of select="umbraco.library:NiceUrl(@id)"/>

The follwoing code adds an Anchor to JQuery Colorbox title attribute to create a link:

<xsl:for-each select="$currentPage/* [@isDoc]">

 <xsl:variable name="getimg" select="yourImage"/>
  <!-- Check to see wheater the user has chosen a an IMAGE and if so, write it out -->

 <xsl:if test="$getimg != ''">
<a rel="gallery" class="image">
      <xsl:attribute name="href">
<xsl:value-of select="umbraco.library:GetMedia(yourImage,'false')/umbracoFile"/>
<xsl:attribute name="title">
<xsl:value-of select="pageTitle"/> - &lt;a href="<xsl:value-of select="umbraco.library:NiceUrl(@id)"/>"&gt;Find out More about this Pic and Comment on it...&lt;/&gt; 

<img alt="">
      <xsl:attribute name="src">
        <xsl:value-of select="umbraco.library:GetMedia(yourImage,'false')/crops//crop [@name = 'Thumbnail']/@url"/>
<xsl:attribute name="alt"><xsl:value-of select="pageTitle"/></xsl:attribute>


Popular posts from this blog

Umbraco Razor Sort Nodes Ascending or Descending

Umbraco Razor get Querystring

Create a .NET Contact Form that Gets the Last Url Visited in C# Can also be Used in Umbraco