I'm currently porting my Sitefinity based www.paydirt.co.nz site over to Umbraco and am having a little difficulty re-creating a simple piece of functionality...
If you look at the main menu there's a "Forums" link which redirects to forums.paydirt.co.nz when clicked. I'm wondering what is the best method / practice for achieving this in Umbraco?
I assume I need to create some sort of "Redirect" Document Type for myself so such items are easy to pick up via the Xslt macro for the main menu? I'm just not sure how to redirect from this Document Type.
1. You do this in the DNS of your website (point the subdomain forums to the appropriate IP address that hosts the forum).
2. You can right click a node in Umbraco and add a domain name (forums.paydirt.no.nz).. But I am assuming that your forum will not be hosted from within Umbraco, right?
Thanks for the reply, much appreciated. However, perhaps I haven't explained my problem very clearly...
Is it possible to add a Document Type to an Umbraco site that has a property that can be set to an external url. This page would appear in navigation amongst normal content pages, but when clicked would simply redirect to another site. In this case it's forums.paydirt.co.nz, but it could equally be anything e.g. www.google.com, our.umbraco.org, etc.
Basically I'm trying to replicate what I've already achieved through Sitefinity with a redirect page type.
Ehm, yes that is possible by putting a usercontrol that does the redirect on the destination page. But what would be the point of having it in the CMS? It's just a link right, you can put it in your masterpage or XSLT..
I'm now thinking a more elegant solution might be to have a Document Type that has a property for url and another for target. This would then be picked up by my xslt for the menu and render the link directly rather than requiring a post back to do a redirect.
Redirect Page (External Url)
I'm currently porting my Sitefinity based www.paydirt.co.nz site over to Umbraco and am having a little difficulty re-creating a simple piece of functionality...
If you look at the main menu there's a "Forums" link which redirects to forums.paydirt.co.nz when clicked. I'm wondering what is the best method / practice for achieving this in Umbraco?
I assume I need to create some sort of "Redirect" Document Type for myself so such items are easy to pick up via the Xslt macro for the main menu? I'm just not sure how to redirect from this Document Type.
Any help would be greatly appreciated :)
Cheers, Gavin
Two options:
1. You do this in the DNS of your website (point the subdomain forums to the appropriate IP address that hosts the forum).
2. You can right click a node in Umbraco and add a domain name (forums.paydirt.no.nz).. But I am assuming that your forum will not be hosted from within Umbraco, right?
Hi Sebastian,
Thanks for the reply, much appreciated. However, perhaps I haven't explained my problem very clearly...
Is it possible to add a Document Type to an Umbraco site that has a property that can be set to an external url. This page would appear in navigation amongst normal content pages, but when clicked would simply redirect to another site. In this case it's forums.paydirt.co.nz, but it could equally be anything e.g. www.google.com, our.umbraco.org, etc.
Basically I'm trying to replicate what I've already achieved through Sitefinity with a redirect page type.
Cheers, Gavin
Ehm, yes that is possible by putting a usercontrol that does the redirect on the destination page. But what would be the point of having it in the CMS? It's just a link right, you can put it in your masterpage or XSLT..
Cheers for the suggestion. Was just hoping there might have been a more elegant solution that could be implemented as a Document Type.
Just wanted to make it easy for non-techy types to drop this sort of functionality in to the site ;)
This is just my practice site before I move a much larger site across.
I'm now thinking a more elegant solution might be to have a Document Type that has a property for url and another for target. This would then be picked up by my xslt for the menu and render the link directly rather than requiring a post back to do a redirect.
Here we go, someone's already provided a solution...
http://www.proworks.com/blog/2010/09/17/proworks-redirect-page-umbraco-package/
I know this is an old post, but if anyone else has the same issue I have put an alternative way of doing this here:
This method uses a c# web form
http://markdevelopmentblog.blogspot.co.uk/2012/05/umbraco-c-redirect-umbraco-page-to.html
Two create a redirect from a Umbraco page to an exteral site you can:
Step 1) Add the page to Umbraco that you want to rediect. (You may want to Hide this page from navigation)
Step 2) Create a new Web Form in C# Visual Studio
(this web form will be placed in the route of the site)
Step 3) Update the Web Config to include the new file mentioned in step 2
(or you will get a Server error in appliaction)
Step 4) Add a Url redirect to the UrlRewriting.config, from the Umbraco page (created in step 1), to the web form (created in step 2).
Step 2: Here is the C# Code (my-redirect-example.aspx) form for step 2:
(it is basically a blank form)
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="my-redirect-example.aspx.cs" Inherits="my_redirect_example" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body onload="open_on_entrance()">
<form id="form1" runat="server">
<div>
</div>
</form>
</body>
</html>
Here is the C# Code (my-redirect-example.aspx.cs) form for step 2:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class my_redirect_example : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Redirect("http://www.markdownie.me.uk");
}
}
Step 3: Here is the line you need to add to the Web Config file for step 3:
Add this in your <appSettings> section.
<add key="umbracoReservedUrls" value="~/my-redirect-example.aspx" />
Step 4: Here is the Code you need to add to the UrlRewriting.config file:
<add
name="myExternalRedirect"
virtualUrl="^~/my-page.aspx"
destinationUrl="~/my-redirect-example.aspx"
ignoreCase="true"
redirect="Application"
redirectMode="Permanent"/>
Note: Highlighted Yellow, ^~/my-page.asp . This is the name of the Umbraco Page you create in Step 1.
Is there a reason why you wouldn't just create a new DocType with a field called pageRedirect and a Template that looks like this?
What are the pros/cons of this?
Hi qrayg, does this solution works? Where to put the link for the external website?
Thanks!
is working on a reply...