Kentico8 - 根据路径显示/隐藏 Web 部件或转换
Kentico8 - Show / hide a webpart or transformation depending on path
在我们的网站上,我们在顶部有一个徽标。我想要的是以下内容:
如果网站的路径开头为:'www.website.com/books' Logo 应该是'books.png'。
如果网站的路径以 anything else 开头,则应为 'logo.png'
徽标加载到转发器 web 部件中。我可以将 books.png Web 部件的可见性设置为:
{%NodeAliasPath.StartsWith("/books/")#%}
这有效,如果我去 website.com/books 和 website.com/books/harry-potter,就会显示徽标,但我想在任何其他网站上使用普通徽标。
首先我尝试在中继器本身的转换中做一些If语句。这样我只需要一个 webpart,它根据路径更改内容。但看起来 Kentico 不允许在转换中使用 If 语句。我仍然更喜欢这样的选项,因为它对我来说感觉更干净。
另一种选择是我制作两个中继器,一个带有普通 logo.png,一个带有 books.png。但是,如果路径以 /books 开头,我将如何隐藏 logo.png?
或者如果有人对此问题有其他解决方案,请告诉我:)
谢谢。
最简单的选择是只为此设置 2 个转发器或 Web 部件,以便在“设计”选项卡中轻松看到它。
/books 的可见性宏应该是:
{% CurrentDocument.NodeAliasPath.ToLower().Contains("/books") %}
对于另一个 Web 部件,您将输入:
{% !CurrentDocument.NodeAliasPath.ToLower().Contains("/books") %}
在我们的网站上,我们在顶部有一个徽标。我想要的是以下内容:
如果网站的路径开头为:'www.website.com/books' Logo 应该是'books.png'。 如果网站的路径以 anything else 开头,则应为 'logo.png'
徽标加载到转发器 web 部件中。我可以将 books.png Web 部件的可见性设置为:
{%NodeAliasPath.StartsWith("/books/")#%}
这有效,如果我去 website.com/books 和 website.com/books/harry-potter,就会显示徽标,但我想在任何其他网站上使用普通徽标。
首先我尝试在中继器本身的转换中做一些If语句。这样我只需要一个 webpart,它根据路径更改内容。但看起来 Kentico 不允许在转换中使用 If 语句。我仍然更喜欢这样的选项,因为它对我来说感觉更干净。
另一种选择是我制作两个中继器,一个带有普通 logo.png,一个带有 books.png。但是,如果路径以 /books 开头,我将如何隐藏 logo.png?
或者如果有人对此问题有其他解决方案,请告诉我:)
谢谢。
最简单的选择是只为此设置 2 个转发器或 Web 部件,以便在“设计”选项卡中轻松看到它。
/books 的可见性宏应该是:
{% CurrentDocument.NodeAliasPath.ToLower().Contains("/books") %}
对于另一个 Web 部件,您将输入:
{% !CurrentDocument.NodeAliasPath.ToLower().Contains("/books") %}