2010-08-18 51 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插入类。