如何通过插件扩展现有页面,如客户或购物车?

时间:2015-07-18 03:38:45

标签: nopcommerce

我到处都读到,编写新插件比触摸核心代码更好。问题是,我无法找到文档,清楚地解释如何从插件中修改页面。

我理解它的方式,要从插件中显示部分页面,需要通过使用此方法返回来告知显示它们的位置:

XMLUnit.setIgnoreWhitespace(true);
diff.identical (...);
diff.similar (...);

但是如果您返回多个区域,则窗口小部件将显示在多个区域中。如果我想在不同区域显示一些信息怎么办?

首先,我想扩展“客户”页面。该页面上的菜单有7个项目:客户信息,地址,订单,可下载产品,库存订购,奖励积分和更改密码。

我想再添加2项:个人信息和连接。点击个人信息后,客户将能够添加额外信息,例如他/她的照片。单击连接后,用户将能够看到其他人正在做什么。

有人可以向我指出解释如何在不触及核心代码的情况下扩展现有页面(如客户和购物车)的文档。

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

我读过人们说使用插件做修改。但实际上我确实发现修改核心逻辑是找到优雅和不太复杂的定制方式以满足我们需求的好方法。

因为,插件只能提供一定的修改限制。在您的情况下,小部件可以扩展。但我不认为客户详细信息页面可以使用插件进行扩展。根据您的要求,您可能需要为客户添加其他列/属性。是的,您可以在安装/删除插件时添加/删除列。但实际上,管理员中的任何用户都可以卸载插件。想想这是否发生在PROD中。你还没有详细说明关系。

我已经为我的组织在2。5年内完成了250多项针对核心nopcommerce的自定义修改(以满足我们的需求)。我从nop 2.65开始然后移动到2.80然后移动到3.20。在我们的自定义修改之上升级nop商业版本有点复杂。但是,如果你从第一天起就有条理,我就可以完成。

以下是我遵循的一些规则,

  1. 在Excel中保留详细的自定义修改列表。

  2. 始终更新代码,例如可以从管理员管理新功能。示例:如果您在标题中添加新菜单,只需确保它可以在管理员设置下显示/隐藏。如果可能的话,这有助于回馈nop商业。

  3. 使用好的数据库差异工具。

  4. 使用版本控制。

  5. 因此,当发布新版本的nop时,我会快速将我的Excel与发行说明进行比较。有关迁移的详细信息,请参阅here