我可以使用Kentico宏来获取部分路径吗?

时间:2011-12-05 16:29:21

标签: kentico

我想知道是否可以使用kentico宏(不一定编写自定义宏)来访问部分重写URL的路径。

示例:http://www.mysite.com/Category/Subcategory/

我想得到最后一部分(子类别),以便我可以动态过滤内容。我想使用宏的原因是不必只有20多个不同的页面模板,所以我可以拥有不同的Web部件属性。

2 个答案:

答案 0 :(得分:0)

假设您正在使用Portal模板,并且您不希望父级中的“所有子类别中的所有项目”列表:

  1. 在父页面上创建文章列表Web部件 - 所有子类别的父级。
  2. 将网页部分Path设置为/{0}/{1}/{2}/%(例如,如果您的路径为/ Home / Parent / Subcategory)或类似的环境。
  3. 对所有子类别页面使用默认设置Inherit作为页面模板。
  4. 这不会在父页面上显示任何内容,子类别将仅显示其自身的文档。注意:如果您希望子类别项目在用户深入查看/{0}/{1}/{2}/item时拥有自己的视图,则可能需要通过更改模板继承或Web部件上的文档类型进行筛选,或者如果您不这样做我希望整个子类别列表也显示在特定于项目的页面上。

答案 1 :(得分:0)

您可以创建自定义宏,也可以使用宏中允许的字符串操作。请参阅http://devnet.kentico.com/docs/6_0/devguide/available_macro_methods.htm#string_methods(您可以使用EndsWith或TrimStrart或类似的东西)。

但是,我认为最好的方法是创建一个完全适合的自定义宏。可能有宏和宏功能的某种组合 - 但我认为编写一个可以满足您100%需求的自定义代码更快。

此外,如果有适合的内容,您可以查看K# - http://devnet.kentico.com/docs/6_0/devguide/ksharp_syntax.htm