首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Rails应用程序中搜索WordPress博客

在Rails应用程序中搜索WordPress博客
EN

Stack Overflow用户
提问于 2012-10-29 07:26:39
回答 6查看 833关注 0票数 4

我有一个为我的Rails3应用程序编写的站点范围的自定义搜索控制器,并希望包括网站的WordPress博客的结果。在我的Rails应用程序中,对帖子执行关键字搜索的最佳方式是什么?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2012-11-05 11:31:39

如果您共享数据库,那么只需对其使用SQL查询即可。这个解决方案提供了直接数据库查询的速度,但您需要正确地构造该查询,以便获得所有相关数据。

如果您无法从Rails应用程序访问WP数据库,那么最好的方法将是使用curl、httparty、RestClient或任何其他文件检索库。

为此,使用自定义模板创建Wordpress页面,该页面将以最适合您在Rails应用程序中解析的格式(json、xml、csv、urlencoded等)输出搜索结果。

然后使用curl/RestClient/httparty…从你的Ruby应用程序请求WP页面

此解决方案为您提供了WP模板标记和函数的功能,以获得结果。

此外,您可以简单地复制和调整核心模板中的search.php,以Rails应用程序所需的格式提供结果,而不是从头开始创建自定义模板。

使用此解决方案,您将缺乏直接访问数据库的速度,因为所有搜索结果都必须通过http管道传输,并且您必须处理数据两次(在WP中编码为正确的格式,在Rails应用程序中解码)。

票数 5
EN

Stack Overflow用户

发布于 2012-11-07 05:11:56

有趣的问题。我想我会这样做:

  • 使用RSS作为从博客到rails应用程序的文本传输。这使得将来可以灵活地添加更多的博客,改变你的博客引擎,数据库主机,等等。它还可以保护你免受Wordpress代码更新的影响。考虑到Wordpress的安全历史,我喜欢将它们托管在一个受保护的沙箱中。RSS是博客的原生语言,所以它看起来很适合这种类型的内容,feedzirra gem将RSS条目导入到rails模型中。
  • 在你的rails应用和你的博客条目中使用Elasticsearchtire feedzirra gem integration.
  • Use 模糊文本搜索。请参阅this Railscast了解详细信息。
票数 1
EN

Stack Overflow用户

发布于 2012-11-09 21:28:16

选项1.是对两个站点都使用搜索引擎,比如elasticsearch,solr等,所以你可以从rails和wordpress中填充索引。

选项2.编写脚本,定期读取wordpress RSS并将数据保存在rails应用程序中。

最后,你应该避免从不同的来源进行搜索,你应该将数据收集到一个地方,然后再进行搜索。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13114081

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档