基于Page - OrchardCMS的布局

时间:2011-07-22 14:21:32

标签: layout orchardcms styling

我在使用Orchard时遇到了一个问题,我确信应该有一个相当简单的修复/解决方案,但我还没有找到它。

我正在尝试为我的主页(580px)建立特定的宽度内容区域,并为内容页面(800px)建立更大的宽度。

Layout.cshtml代码段

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

样式:

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

目前 - 无论页面(主页或内容)如何,Content div都会包装我的所有内容。我想知道是否可以使用不同的div来根据页面包装内容,如下所示:

Layout.cshtml想法:

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

我不确定上述建议的方法是否可行(或者我不确定如何检查当前页面) - 但是其他建议将不胜感激。

3 个答案:

答案 0 :(得分:13)

您可以使用Designer工具模块(内置所有最新的Orchard版本)并启用URL替换功能。然后,您就可以为布局创建layout-url-homepage.cshtml替代。

答案 1 :(得分:2)

您可以使用布局选择器模块为任何内容项目分配自定义布局。

http://gallery.orchardproject.net/List/Modules/Orchard.Module.Orchard.DesignerTools

答案 2 :(得分:1)

您可以使用Vandelay.Classy模块将自定义标记添加到代表您主页的网页,但它会为网页内容编辑器添加很多字段。