2010-01-26 32 views
0

我使用Drupal 6.15與ubercart 2.x和我試圖實現ubercart的hook_checkout_pane()覆蓋其默認的uc_cart_checkout_pane()。我的目標是禁用一些默認結帳窗格 - 客戶信息和訂單評論。控制UberCart結帳窗格鉤優先

我在my_module.module中創建了函數my_module_checkout_pane(),它確實被調用,但uc_cart版本似乎正在生成實際呈現的內容。

我明白爲什麼這兩個函數被調用,我可以通過在系統表中修改模塊的權重來改變它們被調用的順序,但這樣做似乎不會影響頁面上的結果。無論my_module函數是第一次還是第二次調用,uc_cart版本都是呈現的。唯一可以讓我的函數影響頁面的方法是實際改變uc_cart_checkout_pane(),以便它不返回任何輸出,但這不是一個「好」的解決方案。

是否有其他地方我需要做一些事情,使Drupal支持我的鉤子實現超過uc_carts?或者,是否有另一種方法來完成這個?

回答

1

您可以啓用或禁用「Checkout settings」中的結帳窗格。

btw:無需更改模塊權重,您可以使用窗格權重來執行此操作。

1

如果我沒有弄錯,hook_checkout_pane用於創建新的結帳窗格,而不是覆蓋默認窗口。好像你會使用hook_checkout_pane來創建自己的窗格,然後使用它呢?見http://www.ubercart.org/forum/development/11698/alter_checkout_panes

道歉,如果我錯了。

+0

如果在第三篇文章中提出的問題有答案,那麼這可能會奏效 - 如何禁用原始窗格? Post#2暗示了可能性,但沒有說明如何去做。我嘗試了一些類似hook_checkout_pane_alter的方法,但無法完成這項工作。我不確定它是否存在,或者只是海報認爲應該存在的東西。 – ZorroDeLaArena 2010-01-26 17:48:50

+0

您可以在「結帳設置」中啓用或禁用結帳窗格。順便說一句:不需要改變模塊的權重,你可以用窗格權重來做到這一點。 – 2010-01-26 18:02:28

+0

謝謝!我查看了結帳設置,但沒有看到結帳窗格子菜單。 – ZorroDeLaArena 2010-01-26 18:12:46