我正在使用Drupal 6.15和ubercart 2.x,我正在尝试实现ubercart的hook_checkout_pane()来覆盖它们的默认uc_cart_checkout_pane()。我的目标是禁用一些默认的结帐窗格 - 客户信息和订单评论。
我在my_module.module中创建了一个函数my_module_checkout_pane()并且它被调用了,但是uc_cart版本似乎正在生成实际呈现的内容。
我理解为什么两个函数都被调用,我可以通过在系统表中修改模块的权重来改变它们被调用的顺序,但这样做似乎不会影响到页面上的内容。无论是第一个还是第二个调用my_module的函数,uc_cart版本都是呈现的。我可以让我的函数影响页面的唯一方法是实际改变uc_cart_checkout_pane(),这样它就不会返回任何输出,但这不是一个“好”的解决方案。
还有其他一些地方需要做些什么来让Drupal更喜欢我的钩子实现而不是uc_carts吗?或者,还有另一种方法可以实现这一目标吗?
答案 0 :(得分:1)
如果我没弄错的话,hook_checkout_pane用于创建新的结帐窗格,而不是覆盖默认窗格。好像你使用hook_checkout_pane制作自己的窗格而只是使用它?见http://www.ubercart.org/forum/development/11698/alter_checkout_panes
如果我弄错了,请道歉。
答案 1 :(得分:1)
您可以在“Checkout settings”中启用或停用结帐窗格。
btw:无需更改模块权重,您可以使用窗格权重来执行此操作。