代码之家  ›  专栏  ›  技术社区  ›  Matthew Dresser

将页属性数据建模到不同数据库表上的最佳方法

  •  0
  • Matthew Dresser  · 技术社区  · 15 年前

    我正在开发一个带有SQLServer2005数据库的网站(使用ASP.NET MVC)。 我有许多数据库表可以驱动站点的内容页,例如,我有一个名为activity的表:

    Activity
    -----------
    ID
    Name
    

    因此,对于每个活动记录,都会有一个相应的“活动”页面。这同样适用于其他表格,例如位置和人员等。

    出于SEO的目的,我希望允许为页面存储额外的信息,例如HTML meta-title/descritpion/keyword-info,甚至可能是页面内容。

    我正在考虑两个主要的选择:

    1)修改“活动”、“位置”和“人员”表,以包括保存此附加信息的相关字段。

    2)创建一个pageinfo表,将所有这些信息保存在同一个位置,然后简单地将pageinfoid字段添加到上述表中。

    这些方法的优缺点是什么?有没有更好的方法可以做到这一点?

    (对于选项2,我能想到的一个问题是,您不能真正执行1:1关系,因此理论上,您可以让活动记录使用pageinfo记录 个人记录。

    1 回复  |  直到 15 年前
        1
  •  1
  •   Matt Kocaj    15 年前

    如果我可以建议的话……你可能是以错误的方式进行SEO。

    我认为您不应该为每个“activity”对象添加额外的元数据来从页面中获得更好的搜索结果,而应该只关注使用干净、语义、有效的XHTML和CSS将“activity”数据放入页面。这样,搜索引擎将担心找出每个页面中最重要的部分,并相应地对其进行索引/排名。

    此外,尝试将这些“页面元”对象添加到系统的域模型中会为您的设计带来各种概念性(甚至是实际的)问题,对于那些难以理解“活动标题”与“页面标题”之间的差异的重要性的用户来说,这无疑会让他们感到困惑。让机器人从你的内容中找出我们的关键词,不要试图自己去做——这种过度优化实际上会导致比更好的页面排名更差的页面排名。