2012-02-03 21 views
6

Tengo esta pregunta sobre la estructuración de umbraco y no puedo encontrar la respuesta en ningún lado.¿Cómo configurar Umbraco como predeterminado en una subpágina?

Por lo general, en Umbraco se predetermina el sitio raíz al primer nodo del árbol. por lo que si tenemos

  • Inicio
    • página 1
    • página 2

la página por defecto será el hogar (por lo www.mysite.com apuntará a casa) .

¿Cómo cambio esto para que www.mysite.com apunte a la página 1 o a la página 2? ¿Qué pasa si tengo esta estructura?

  • envoltorio
    • índice
    • página 1
    • página 2

y quiero www.mysite.com ir directamente a www.mysite.com/index .aspx

No he podido encontrar una regla que lo haga. Intenté insertar una regla de reescritura/redirección y no cambió nada.

Por favor, ayudar a

Nick

Respuesta

4

de redireccionamiento en Umbraco es por lo general un asunto muy simple, excepto cuando se está tratando de redirigir desde el nodo raíz de su sitio.

Método 1:

lo explica mejor aquí: http://our.umbraco.org/wiki/reference/umbraco-best-practices/umbracoredirect

Así que es posible mediante la adición de una propiedad umbracoInternalRedirectId a su nodo raíz, con el tipo de datos del Selector de contenido. Tenga en cuenta que no redirige al usuario, sino que carga el contenido de esa página dentro de la url actual. Por lo tanto, la URL permanecerá como http://www.mysite.com mientras sirve los contenidos de la página a la que desea redirigir.

Método 2:

Si realmente quieren que cambie de http://www.mysite.com/ a http://www.mysite.com/index.aspx. Normalmente agrego algo así como el siguiente código a la plantilla del nodo raíz.

<%@ Master Language="C#" MasterPageFile="~/umbraco/masterpages/default.master" AutoEventWireup="true" %> 
<asp:Content ContentPlaceHolderID="ContentPlaceHolderDefault" runat="server"> 
</asp:Content> 
<script type="c#" runat="server"> 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     Response.Redirect("http://www.mysite.com/index.aspx");  
    } 
</script> 

Para que ASP.Net sea responsable de la redirección. Pero obviamente no manejará el cambio de nombre del nodo/moviéndose demasiado bien.

+0

wow que funcionó !!!! ¡Agregué la propiedad de redirección y funcionó! ¡Gracias! – Nick

+0

Sin preocupaciones. Solo asegúrate de que aún puedes guardar XSLT sin error (si es que incluso los estás usando). Esa es la razón principal por la cual el uso del sistema de redirección de Umbraco puede ser tan complicado en el nodo raíz, como se explica en el enlace anterior. –

+0

Solo uso una afeitadora en lugar de XSLT y el sitio parece renderizar perfectamente – Nick

0

puede redirigir a cualquier página mediante la reescritura de la URL Config/UrlRewriting.config

la adición de este papel

<add name="role1" 
    virtualUrl="^~/$" 
    destinationUrl="~/home" 
    redirect="Application" 
    redirectMode="Permanent" 
    ignoreCase="true" /> 
Cuestiones relacionadas