Umbraco 模板之间的共享内容

Umbraco 模板之间的共享内容,umbraco,umbraco7,Umbraco,Umbraco7,我想在模板之间共享内容(基本上是html块) 例如,假设我有一个带有一两个图形、文本和指向“关于我们”、“联系我们”等链接的公共页脚部分。 我有不同的页面布局不同的模板,但他们都需要这个页脚。 到目前为止,我可以想到三种方法: 嵌套模板:ie有一个包含页脚内容的主模板,然后是每个布局的子模板,然后是实际的页面模板,但是如果某些页面需要不同的页脚,这可能会变得很棘手 使用局部视图保存页脚内容,并使用@Html.Partial()拉入各种模板的局部视图 使用页脚内容创建设置文档,并使用Umbraco

我想在模板之间共享内容(基本上是html块)

例如,假设我有一个带有一两个图形、文本和指向“关于我们”、“联系我们”等链接的公共页脚部分。 我有不同的页面布局不同的模板,但他们都需要这个页脚。 到目前为止,我可以想到三种方法:

  • 嵌套模板:ie有一个包含页脚内容的主模板,然后是每个布局的子模板,然后是实际的页面模板,但是如果某些页面需要不同的页脚,这可能会变得很棘手
  • 使用局部视图保存页脚内容,并使用@Html.Partial()拉入各种模板的局部视图
  • 使用页脚内容创建设置文档,并使用Umbraco.content()获取页脚属性

  • 这些是否是推荐的流程(是否存在缺陷?)或是否有更好的方法?

    我通常会执行以下操作之一:

    • 在主页上为页脚链接等设置属性(在单独的选项卡中),并将值拉入页脚部分,这样您只需设置一次,而不是在每个页面上设置
    • 有一个与主页处于同一级别的站点设置节点,并将其值拉入页脚部分
    从我工作过的大多数翁布拉科网站来看,这似乎是相当标准的。我不会在每个页面上都有所有的属性,除非出于某种原因,您需要每个页面都有一个唯一的页脚

    例如,假设您在主页DocType中添加了一个名为“Footer Settings”的选项卡,该选项卡具有一个别名为“copyRightNotice”的字符串属性,然后您希望在部分中显示该选项卡,您的部分可能类似于:

    @inherits Umbraco.Web.Mvc.UmbracoTemplatePage
    @{
        var rootPage = Model.Content.AncestorOrSelf(1);
        <h3>@rootPage.GetPropertyValue("copyRightNotice")</h3>
    
    }
    
    @继承Umbraco.Web.Mvc.UmbracoTemplatePage
    @{
    var rootPage=Model.Content.AncestorOrSelf(1);
    @rootPage.GetPropertyValue(“版权声明”)
    }
    
    我通常会执行以下操作之一:

    • 在主页上为页脚链接等设置属性(在单独的选项卡中),并将值拉入页脚部分,这样您只需设置一次,而不是在每个页面上设置
    • 有一个与主页处于同一级别的站点设置节点,并将其值拉入页脚部分
    从我工作过的大多数翁布拉科网站来看,这似乎是相当标准的。我不会在每个页面上都有所有的属性,除非出于某种原因,您需要每个页面都有一个唯一的页脚

    例如,假设您在主页DocType中添加了一个名为“Footer Settings”的选项卡,该选项卡具有一个别名为“copyRightNotice”的字符串属性,然后您希望在部分中显示该选项卡,您的部分可能类似于:

    @inherits Umbraco.Web.Mvc.UmbracoTemplatePage
    @{
        var rootPage = Model.Content.AncestorOrSelf(1);
        <h3>@rootPage.GetPropertyValue("copyRightNotice")</h3>
    
    }
    
    @继承Umbraco.Web.Mvc.UmbracoTemplatePage
    @{
    var rootPage=Model.Content.AncestorOrSelf(1);
    @rootPage.GetPropertyValue(“版权声明”)
    }
    
    您是否尝试过查看默认的“Fanoe”初学者工具包?他们使用partials,因为我认为这是在MVC中实现它的最好方法。另外,看看你有没有试过看看默认的“Fanoe”初学者工具包?他们使用partials,因为我认为这是在MVC中实现它的最好方法。另外,看看你有没有试过看看默认的“Fanoe”初学者工具包?他们使用partials,因为我认为这是在MVC中实现它的最好方法。另外,看一看不明白第一个…你的意思是只有主页上的属性,并将它们从主页拉到部分和部分的所有模板上,即其他页面有效地从主页继承?(第二个相同,但继承自独立的非显示文档?)是的,属性仅在主页上,然后在部分中,您可以获取对主页节点的引用,并使用该引用构建链接等。其他模板不继承自主页。是的,第二个也一样,但它是一个独立的节点。天哪,我几乎明白了。谢谢(从一个蒂姆到另一个蒂姆)!不理解第一个…你的意思是只有主页上的属性,并将它们从主页拉到部分和部分的所有模板上,即其他页面有效地从主页继承?(第二个相同,但继承自独立的非显示文档?)是的,属性仅在主页上,然后在部分中,您可以获取对主页节点的引用,并使用该引用构建链接等。其他模板不继承自主页。是的,第二个也一样,但它是一个独立的节点。天哪,我几乎明白了。谢谢(从一个蒂姆到另一个蒂姆)!不理解第一个…你的意思是只有主页上的属性,并将它们从主页拉到部分和部分的所有模板上,即其他页面有效地从主页继承?(第二个相同,但继承自独立的非显示文档?)是的,属性仅在主页上,然后在部分中,您可以获取对主页节点的引用,并使用该引用构建链接等。其他模板不继承自主页。是的,第二个也一样,但它是一个独立的节点。天哪,我几乎明白了。谢谢(从一个蒂姆到另一个蒂姆)!