我正在构建一个ecms的前端。前端的主要目的是根据存储在数据库中的内容来呈现html页面。如何在CMS中的页面之间存储链接
我每页有一个表,每个表由一个带有页面内容和一些元数据的xml字段组成。 (我选择在数据库中存储xml以利用SQL Server 2008提供的功能,如xquery或xsd验证)
我想如何存储页面之间的链接,以便可以在将来更改url模式(我不完全确定它是必需的)。
目前,我确定了两种类型的内部链接:
- 普通链接 - 就像一个
<a>
标签的文本包围。与嵌入式内容链接 - 列表 - 像相关的新闻项目的列表(每个项目,我需要显示与链接和摘要标题)
目前我看到了以下解决方案:
一个正常的链接:
- 商店通过它像一个令牌包围:
$PAGE_LINK[unique identifier of the content]
,并在呈现阶段正确的链接替换该标记。 (此方法取自Livesite,与我一起工作的ECMS) - 将其存储为
<a href="local://unique identifier of the content">
,并用适当的链接替换href属性 的内容。 - 假设url的模式是静态的。
并与嵌入内容的链接:
- 存储它尽可能多的在数据库中的许多关系(利用我的ORM)。
将它作为xml内容的唯一标识符列表存储,作为页面的xml内容的一部分(这可以免费订购,并且更灵活一点)。例如:
<related_articles> <resource type="news" content_id="233"/> <resource type="news" content_id="231"/> <resource type="blog_post" content_id="233"/> </related_articles>
的问题: 你知道任何其他办法解决这个问题?它是如何在领先的CMS系统中完成的,如:Drupal,Joomla,N2,Wordpress等等?你会选择哪种解决方案?