2010-08-18 56 views
1

我正在爲我們正在生產的Drupal網站上安裝Ubercart。一切都很順利,但我現在試圖設置訂單頁面模板(uc_order模塊),以便前端開發人員可以對其進行設計。主題Ubercart訂單窗格

該頁面是您在轉到用戶/ [UID] /訂單/ [訂單ID]時查看的頁面。

我明白如何在Drupal中使用鉤子,預處理,主題和模板函數,但目前我無法看到在構成頁面的「訂單窗格」中更改任何標記的方法。毫無疑問,我不想觸摸任何模塊的代碼。

所以,其中一個頁面是「比爾」地址窗格:

<div class="order-pane pos-left"> 
    <div class="order-pane-title">Bill to: </div> 
    Name<br> 
    Address<br> 
    Town<br> 
    Postcode<br> 
</div> 

基本上我想提出一個類在div,所以它看起來是這樣的:

<div class="order-pane pos-left bill-to">...</div> 
<div class="order-pane pos-left ship-to">...</div> 
<div class="order-pane pos-left payment">...</div> 
<div class="order-pane pos-left comments">...</div> 
... 

我只是不能看到這樣做的一種方式。

任何幫助將不勝感激。

回答

1

你是否檢查過最新版本的UC?發行說明指出:

但是,最大的變化是訂單發票模板現在使用主題系統來允許自定義。與直接更改模塊文件不同,現在在主題中重寫它們是正確的,就像節點和頁面模板一樣。

......如果我沒有弄錯(自從我與UC合作以來已經過去了幾個月),發票就是您提供的URL顯示的頁面。

如果我的記憶失敗了我(我沒有一個UC安裝方便地驗證我自己),一個可能的解決方法(公認的遠離優雅,但仍然允許你不要更改模塊的代碼)將改變HTML jQuery在頁面加載完成後。

更簡單的解決方法是維護您自己的該網址的頁面回調,並且只需更改UC代碼中的菜單定義[是的,它仍在破解代碼,但在這種情況下,您只需修改UC代碼中有一行,並且可以將代碼保存在單獨的模塊中]。

HTH, Mac。

+0

謝謝,我曾經想過jQuery,但我們對此並不高興。我還想過爲每個訂單窗格創建一個回調函數,但我不確定我們將如何保持這一點。我會進一步研究這一點,我有點希望我錯過了一些東西。 – JonB 2010-08-19 13:03:03

1

您可以創建自己的窗格或單個窗格,查找hook_pane,或者您可以使用jquery插入類。