Is there any tutorial available for how do i add custom fields on front end check out step like PO number,Job name , customer comments etc as well as in admin->create->order.
1 回答
我通常的座右铭是找到(并在需要时购买)一个已经具有您想要的功能的模块。尤其是当该项目的生命周期涉及版本升级时,因为您可以从提供商处寻求预打包的解决方案。
我对添加到我们的 Magento 安装中的每一点自定义代码感到遗憾。因为现在除了找出我的黑客之外,我还必须维护网站才能继续工作。是时候花更多时间用现成的扩展替换 hack,这本来会更快。
我知道这种态度在某种程度上违背了堆栈溢出的想法,即我可以做任何事情,但实际上,Magento 的工作是让某人做更少的工作。
两年后,更新:在轻轻一票否决之后(可能是因为似乎对这个问题不屑一顾),我回来重新审视并分享我学到的一些东西。附加字段的编程方面是数据持久性的概念。
如果您对仅出现在订单后的交易电子邮件中的自定义字段感到满意,那么任务就像将字段添加到表单中的某处然后更新控制器以捕获并将发布数据插入到电子邮件。您可以在后端使用自定义变量来轻松地将其公开给电子邮件模板。还有一个Magento SE 以编程方式创建自定义变量。
将持久性引入后端需要通过模块中的安装程序添加数据库字段。iCoreThink博客清楚地列出了这些步骤并解释了原因、如何确认您的工作,然后提供了真实世界的实施,例如在客户的帐户中显示。下面提到的“其他博客”有一个很好的例子,尽管他的例子专门与计费和运输有关。
来自我的点赞和书签的资源:
» 这篇iCoreThink 博客文章是迄今为止我最喜欢的参考资料,也是我现在关注的内容。
» 我使用的是 Templates Master 的FireCheckout,其中包括他们自己的checkoutfields模块,但我已经放弃了他们的单视图结帐,而是使用 Magento 的一页结帐流程。我现在正在尝试将他们的结帐字段(并使用他们的控制器)调整到我的结帐模板中。
» 我确信Alan Storm写了一篇关于 Checkout 自定义字段的文章,但我没有看到。
»这个 Magento SE列出了几个博客和一个付费扩展。卓越博客还可以,但他的风格对我来说太死板了,我什么都学不到。另一个博客讨论了构建模块和安装数据库字段的过程。
»意外的 IT 博客演示了将代码添加到核心文件的非正式 hack(但遗憾的是没有显示如何通过将这些文件复制到应用程序/代码/本地来覆盖这些文件)以及手动执行以获取列和数据库中添加的字段。显然对于 1.4 及以下版本是完美的,但评论似乎解释了为 1.5 及以上版本做什么。
最后一个 hack-ish 更改是我个人最喜欢的,因为它无缝地将额外的位添加到现有的 Magento 管理页面中,并且“感觉”更少的工作。警告:如果不使用版本控制,我不会这样做,如果在版本升级之间发生任何核心代码更改,它绝对会崩溃。