2011-07-22 14 views
8

He encontrado un problema al utilizar Orchard de lo que estoy seguro es que debería haber una solución/solución bastante simple, pero todavía no lo he encontrado.Diseño basado en la página - OrchardCMS

Estoy tratando de establecer un área de ancho específico para mi página de inicio (580px) y un ancho mayor para las páginas de contenido (800px).

Layout.cshtml Fragmento:

<div id='content'> 
     @Zone(Model.Content) 
    </div> 

Estilo:

#Content 
    { 
     [...] 
     width: 580px; 
    } 

Actualmente - el div contenido envuelve todo mi contenido independientemente de la página (ya sea página inicial o contenido) . Me pregunto si es posible utilizar un div diferente para envolver el contenido basado en la página, como se muestra:

Layout.cshtml Idea:

@if(Model.Page != "Home") 
{ 
    <div id='fullcontent'> 
     @Zone(Model.Content) 
    </div> 
} 
else 
{ 
    <div id='content'> 
     @Zone(Model.Content) 
    </div> 
} 

estoy seguro si lo anterior sugiere método es posible (o no estoy seguro de cómo verificar la página actual), pero cualquier otra sugerencia sería apreciada.

Respuesta

13

Puede usar el módulo Herramientas del diseñador (incorporado en todas las versiones recientes de Orchard) y habilitar la función de URL alterna. A continuación, podrá crear una alternativa de layout-url-homepage.cshtml para su diseño.

+3

Esta es básicamente la ruta que finalmente tomé: ¡Designer Tools funciona de maravilla! También quiero agradecerle a Bertrand, ¡Orchard es fantástico! –

+0

Actualicé la url de esta respuesta: parece que la galería se ha movido a un subdominio pero no se han implementado 301 redireccionamientos – rtpHarry

1

Puede usar el módulo Vandelay.Classy para agregar etiquetas personalizadas a la página que representa su página de inicio, aunque agrega muchos campos al editor de contenido de la página.

+0

Gracias por la sugerencia - Estaba jugueteando un poco con algunas cosas, y que finalmente acaba de crear un diseño diferente para esta página. Layout_url_xxxxx.cshtml. Lo cual parece estar funcionando por ahora. –

Cuestiones relacionadas