我正在使用带有ubercart2.x的Drupal6.15,并且我试图实现ubercart的hook_checkout_pane()来覆盖它们的默认uc_cart_checkout_pane()。我的目标是禁用一些默认的结帐窗格--客户信息和订单评论。
我在my_module.module中创建了一个函数my_module_checkout_pane(),它确实被调用了,但是uc_cart版本似乎生成了实际呈现的内容。
我理解这两个函数被调用的原因,并且我可以通过修改system表中模块的权重来更改它们的调用顺序,但这样做似乎并不会影响页面上的结果。无论my_module的函数是第一次调用还是第二次调用,呈现的都是uc_cart版本。让我的函数影响页面的唯一方法是实际更改uc_cart_checkout_pane(),这样它就不会返回任何输出,但这不是一个“好”的解决方案。
有没有其他地方我需要做点什么来让Drupal更喜欢我的钩子实现而不是uc_carts?或者,有没有其他方法来实现这一点?
发布于 2010-01-27 14:02:12
您可以在"Checkout settings“中启用或禁用结帐窗格。
顺便说一句:不需要改变模块的权重,你可以用窗格的权重来实现。
发布于 2010-01-27 01:35:05
如果我没记错的话,hook_checkout_pane用于创建新的结帐窗格,而不是覆盖默认的窗格。看起来你会用hook_checkout_pane制作你自己的面板,然后直接用它?请参阅http://www.ubercart.org/forum/development/11698/alter_checkout_panes
如果我弄错了,很抱歉。
https://stackoverflow.com/questions/2141196
复制相似问题