我正在尝试使用包含参数的静态URL地址创建搜索引擎。例如:www.domain.com/search,city,region,type.html
由于某种原因(数据库关系没有很好地预测)我无法在URL中放置标识符 - 我已经完全按原样放置了参数名称。问题是参数可以包含特殊字符,如“ó”,“ż”,“ć”,“±”。我已经读过,不建议在SEO方面把它放到URL中,所以我不打算这样做,因为SEO对我来说非常重要。只有名为city的参数才会有特殊符号。
我有一些想法。
哪种方式最好?还有其他想法吗?网址应该很好看。
答案 0 :(得分:2)
上述解决方案均不正确,至少不是我的观点。
你要做什么,或者至少我要做的是:
1)为国家提供一个表格,一个用于州,一个用于城市。我假设您已经拥有它,如果不这样做,那么使用Open Source CMS,如Open Cart,从那里获取它们,或者使用geonames.org之类的web服务。
2)每个表都有一个名为slug / nice_url /的列,无论你在哪里存储你的实际名称的漂亮url副本。您将使用:https://github.com/jbroadway/urlify这是一个很棒的php库来创建好的slugs
3)然后,您所要做的就是索引每个表格中的slug列,然后您的网址将变为:
www.domain.com/search/bialystok/wielkopolskie/restaurant
并且基于此,您知道wielkopolskie
是您所在城市的名称,您将使用slug在您的城市表中搜索它,您将获得正确的记录。
注1:在我的例子中,我真的不知道我是否得到了正确的城市,因为我不知道你们国家的城市,但是你应该明白这一点。
注2:我知道这意味着你的工作和改变很多,但如果你这样做,至少做得对,从长远来看,这将是一场胜利。
注3:也许阅读关系数据库也可以帮助您以关系方式创建表。