【发布时间】:2009-09-12 11:06:35
【问题描述】:
我被要求完成我的最终学位项目,以构建自定义 SEO 内容管理系统;关键是该请求是为这个CMS的内部搜索引擎实现PageRank算法,通过PR对查询结果进行排序。 是否可以?我该如何开始呢? CMS 建立在 PHP 和 MySql(或 PostgreSql)之上。 非常感谢你。
【问题讨论】:
标签: php mysql content-management-system seo pagerank
我被要求完成我的最终学位项目,以构建自定义 SEO 内容管理系统;关键是该请求是为这个CMS的内部搜索引擎实现PageRank算法,通过PR对查询结果进行排序。 是否可以?我该如何开始呢? CMS 建立在 PHP 和 MySql(或 PostgreSql)之上。 非常感谢你。
【问题讨论】:
标签: php mysql content-management-system seo pagerank
【讨论】:
您可以创建某种数组然后排序,这里我使用了您的 $pageRank 算法的结果(您已经创建了,不是吗?)作为链接的关联键搜索结果对象。尽管您可以(根据您的系统性能)根据需要将整个结果集保存在数组中。
$pageRankedResults = array("$pageRankAlgorithmResult" => "$referenceToSearchResultObject")
);
echo "<ol>";
foreach(asort($pageRankedResults) as $key => $value) {
echo "<li>$value</li>";
}
echo "</ol>";
【讨论】:
等中的权重不同...但是我如何将此结果与公关分数?
如果您完成了 PageRank 算法,您可能不想在每次搜索时都计算它。我会安排定期计算(每天?每周?任何最合适的),然后将 PR 存储在您的数据库中。
然后,当您运行 SQL 查询时,只需按 page_rank 排序
【讨论】:
您需要提出一种算法来确定页面的“重要性”。谷歌倾向于使用反向链接来确定这一点,但关键字的使用也是一个重要因素。在您的 CMS 上,是什么让页面变得重要?获取特定页面或搜索查询并从中制作用例。当您进行此搜索时应该出现哪个页面,为什么会出现?使用此信息来确定您的算法在对这些页面进行排名时应该寻找什么。
【讨论】: