在我的基于Sitefinity 4.3的网站中,我使用标准的博客内容模块和小部件模板设置了博客。博客帖子除其他外,还与其相关的产品进行了分类。
网址结构如下:
/blog_template_page/blog_category_template_page/2012/01/01/post-name
每篇博文都至少有两个类别:
在网站的其他地方,我有构成产品目录的Pages。在产品X的页面上,我想显示一个包含产品X的product_category的博客帖子列表。当用户点击阅读博客帖子时,他们应该转到上面的原始博客URL(博客的永久链接)后)。
如何获取Sitefinity博客列表小部件以生成原始博客帖子位置的网址?
据我所知,Sitefinity给了我两个选项:使用当前页面作为博客文章的模板(我不想这样做,因为我在目录页面中)。或者使用网站中的另一个页面作为模板(我不想这样做,因为我将使用一个全新的URL)。
换句话说......
我想做什么:在产品X的主要产品页面上,我想显示链接到原始博客帖子的动态列表。我可以创建一个新的单个博客帖子模板并通过新模板呈现内容,但这会给我新的URL。我真的只是希望博客列表生成其原始位置的博客帖子的链接。
在wordpress中,我会使用the_permalink();在我的博客列表模板中。 Sitefinity中有类似的东西吗?
如果我有办法从后端管理页面而不是代码中设计/完成此操作,那么
双点。但是一切都比没有好。
答案 0 :(得分:1)
我认为您问题的单行答案是:博客帖子没有默认位置。
Sitefinity的架构基本上允许将任何内容放在任何页面上。项目的绝对URL由这些(页面和项目特定URL)组成。因此,单个博文可以包含无限数量的URL,具体取决于您正在查看的页面。
这是一项设计决定,我理解这可能令人困惑。但是,您可以做的是确定其中一个URL(使用特定页面)将是默认URL。然后,如果您希望列出博客帖子的所有位置都指向此默认值,只需将BlogPosts小部件设置为始终指向单个帖子的特定页面。
您可以配置项目特定URL中显示的内容,但无法控制页面部分 - 这始终是您正在查看的当前页面。有关您可以在我撰写的几篇博文中找到的URL的更多信息:
Custom URL formats for Sitefinity content modules
URL filtering in built-in content widgets
URL filtering with multiple content widgets per page
如果您还有其他问题,可以在我们的论坛中或直接写给我(在telerik dot com上的slavo dot ingilizov)。
的问候,
Slavo
Sitefinity团队。
答案 1 :(得分:0)
我假设你在谈论标准的Sitefinity'类别'是否正确?
过滤目前适用于QueryString或UrlPrefix。所以你最终得到这样的东西:
/product-blog-sample/-in-Category/Categories/services/serviceb
或
/product-blog-sample?taxonomy=Categories&propertyName=Category&taxon=%2fservices%2fserviceb
在这两种情况下,您都会在页面上删除博客小部件,转到编辑,然后在第一个选项卡上选择“缩小选择”并选择第二个单选按钮“选择帖子”,然后选择第一个选择框“按类别”。 / p>
然后点击底部的“高级”,找到“UrlEvalutationMode”字段。默认情况下,它将具有UrlPrefix(url result 1),但您可以将其更改为QueryString并获取第二个结果。
在列表设置选项卡上,您只需选择仅列出标题的新模板。
作为最后一步,您必须更新产品详细信息模板以输出到网址,以便“类别”包含在其中。
我可能会错误地阅读您的问题,因为sitefinity中的产品没有类别,只有标签和部门 - 所以如果您可以进一步解释您尝试实现的目标,我们可能会设置你还有一个合适的代码示例。
学家