我目前正在做一个eCommerce风格的项目,它使用搜索引擎来浏览存储在数据库中的7,000+条目。这些搜索结果中的每一个都包含指向full description页面的链接。我一直在考虑创建干净的/ slug URL,我的目标是如果用户点击一些搜索结果条目,浏览器将使用slug URL导航到一个新页面。
www.mydomain.com/category/brown-fox-statue-23432323
我有一个将字符串/句子转换为URL形式的系统。但是,我不清楚之前的步骤是什么,一旦这些网址被创建。实施这个系统的总体计划是什么?URL是否需要存储在数据库中?我是否应该使用搜索结果页中的post或get数据在这些full description urls中创建内容?
非常感谢大家的建议!
首先要感谢大家!
发布于 2013-07-08 22:26:06
每个产品在数据库中都有一个与之相关联的唯一url。
当您执行搜索时,您只需返回正确的唯一url。
这样,当产品第一次被添加时,你只需要计算一次url应该是什么,并且该url将始终与该产品相关。这是您使用系统创建该url的阶段。
发布于 2013-07-08 22:32:08
也许你可以告诉我们你是不是在使用框架?一些框架(如Zend)有用于路由的ini / xml文件。但您仍然需要将urls或至少文章段塞存储在数据库中。
在条目urls被“搜索”之后将它们存储在db中是必要的,因为您希望slugs对于条目保持相同。这允许更好的缓存/ SEO,这将提高您的站点的可用性。
希望这能有所帮助!
编辑:我看到了你的问题,关于拉出单篇文章。您必须首先在您的条目与数据库中的urls之间建立一个关系。创建一个包含url_id和url的url表。然后将url_id放在条目表中。然后,每当有人访问任何URL时,在url表中搜索当前的url,调用url_id,然后提取条目。在这一点上,它只是设计页面的样式,让它看起来像你想要的那样。
发布于 2013-07-08 22:33:23
一种常见的方法是有一个双射(可逆)函数,可以将“常规”URL转换为用户友好的URL:
例如:
www.mydomain.com/category/brown-fox-statue-23432323
<=>
www.mydomain.com/index.php?category=brown-fox-statue-23432323
然后,您不需要记录此映射(约定与配置)。
在StackOverflow上搜索“用户友好的网址重写”,获取有关如何使用Apache自动实现这一点的信息。This question是一个很好的起点。
https://stackoverflow.com/questions/17528922
复制相似问题