Woocommerce(WordPress)和Opencart集成

3
我正在为客户开展一个项目,需要在5个不同的网站中(使用wordpress)设置每个网站都有一个商店页面。这位客户已经在opencart上建立了一个在线商店。现在他们希望我以这样的方式在5个网站中设置这些商店页面,以便它们可以直接从opencart站点中拉取特定类别的产品。并且所有小功能,如购物车和结账,应该在各个网站上可用,而无需重定向到opencart站点。
我决定在这些wordpress站点中使用 woocommerce作为商店框架,并开发另一个插件来扩展/覆盖woocommerce功能,使其从不同服务器上的opencart数据库中获取非本地数据而是商店数据。
现在我考虑了两种不同的方法:
  1. 从WordPress网站直接连接到opencart网站数据库,并根据条件查询商店数据并在商店页面上显示。
  2. 在opencart网站中使用某种REST api(例如this),使其他网站能够检索商店数据作为JSON。并使用此检索列表填充这些WordPress网站中的商店页面。

最可能我会选择第二种方法,因为我认为它更容易且不冗余。但是我不知道可能会面临什么后果;我不知道它可能存在的任何安全漏洞。所以,我不知道最好的做法是什么。

那么,有人可以告诉我考虑安全和所有方面哪种方法更好?为什么?我想知道“ REST api”方法是否存在任何问题?如果您有任何其他更好的方法,我也会感激。

提前致谢!

1个回答

2
我将从最后一个选项开始,即使用(REST)API。虽然这是访问来自不同网站的数据的推荐和最干净的方法,但它也有最大的后果:
- 您仅限于它提供的服务/方法 - 您仅限于它提供的数据 - 您指向的API非常轻量级,只允许您读取一些少量的数据,但请考虑您需要更新产品库存状态和库存数量以及它们的选项库存状态的情况。因此,您还需要写入一些数据。
您可以选择fork这个项目并添加您自己的服务,以便读取更多的信息并写入一些信息,同时扩展现有的服务以获取有关实体的更多详细信息。
第一个选项 - 直接访问OpenCart的数据库 - 虽然不推荐,也不是很干净的解决方案,但由于非常简单而强大的原因(具有重要责任) - 访问所需的任何数据的自由(当然也包括重新/编写任何数据 - 这是主要的责任),因此不能被忽略或忘记。
我无法告诉您第一个选项完全错误,也无法告诉您第二个选项是您可以采用的最佳选项,因为这将是基于观点的答案。因此,请考虑并考虑您的时间表 - 编写全新的(REST)API可能会使开发时间加倍。决定是否希望在相对相同的开发时间内直接访问所有数据,还是您有足够的时间使用符合所有您(客户)需求的(REST)API构建干净的解决方案。如果可以,您还可以说服您的客户支付更清洁和更安全的解决方案,即使用(REST)API,这需要更多的时间 :-)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接