【问题标题】:inserting content of one template inside another umbraco将一个模板的内容插入另一个 umbraco
【发布时间】:2013-02-27 05:31:14
【问题描述】:
我是 umbraco 的新手。我试图在另一个模板中显示一个模板的某些部分。
例如
1) 我有产品页面,其中列出了所有产品和一些关于它们的描述。
2)现在我也想在我的主页上显示这个内容。我不想将代码从产品页面复制并粘贴到主页。因为如果产品页面发生一些更改,这将要求我做同样的事情。
此外,产品页面包含子节点,由宏自动显示。
我只想将产品页面内容显示到我的主页。
提前致谢。
【问题讨论】:
标签:
content-management-system
umbraco
【解决方案1】:
您只需添加一个新的宏来显示您需要的产品页面内容,然后将其添加到主页模板中。
将其作为 razor 脚本文件执行类似于(其中 1111 是您的产品页面节点 ID)。如果您使用 ucomponents,您可以使用 uQuery.getNodeByUrl 或其他更好的辅助方法,但此代码应该可以直接使用:
var productPage = @Model.NodeById(1111);
<div>
<a href="@productPage.Url">
<h4>
@productPage.copyHeadline
</h4>
</a>
@if (!string.IsNullOrEmpty (@productPage.copyBlurb.ToString ()))
{
@Html.Raw(@productPage.copyBlurb.ToString().Substring(0, 200) + "...");
}
</div>