1

我为学术参考创建了一个自定义模块引用。引文包括标题和可选文章 URL以链接到原始文章。

有没有办法让我编写小部件模板,以便在 URL 不为空的情况下将其呈现为链接?对我的 PHP 风格的伪代码(sitefinity/.net 的新手)表示歉意,我脑子里的东西是这样的:

if (notEmpty('articleURL')) {
    <a href="<%# Eval("articleURL")%>"><%# Eval("Title")%></a>
} else {
    <%# Eval("Title")%>}

理想情况下,我希望能够通过在线小部件编辑器而不是外部文件来做到这一点。

4

1 回答 1

0

我知道我在您交叉发布的 Sitefinity 论坛上回答了这个问题,所以我在这里重复解决方案,以防其他人在这里寻找这个问题。


默认情况下,内置的小部件模板编辑器将删除任何服务器端代码,因此很遗憾这种方法不起作用。

但是,我相信有两种方法可以达到预期的效果。

您也许可以使用三元运算符来隐藏一个值,例如:

<%# Eval("Foo") == null ? "" : Eval("Foo") %>

或者,您可以将小部件模板映射到外部文件。使用外部模板文件不会剥离代码,并且您可以完全控制以任何方式呈现内容。

有关映射模板的更多信息,请查看这篇文章:为 Sitefinity 4 小部件映射外部模板

希望这会有所帮助!

于 2012-03-18T21:46:36.473 回答