Тематические панели заказов Ubercart - PullRequest
1 голос
/ 18 августа 2010

Я работаю над установкой Ubercart на производимом нами сайте Drupal.Все идет гладко, но я сейчас пытаюсь настроить шаблон страницы заказа (модуль uc_order), чтобы разработчики веб-интерфейса могли его стилизовать.

Страница, которую вы просматриваете, переходя к пользователю /[UID] / order / [ORDER-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>
...

Я просто не вижу способа сделать это.

Любая помощь будет высоко ценится.

Ответы [ 2 ]

1 голос
/ 18 августа 2010

Вы можете создать свои собственные панели или одну панель для всего, посмотреть hook_pane, или вы можете вставить классы, используя jquery.

1 голос
/ 18 августа 2010

Вы проверили последнюю версию UC? В примечании к выпуску говорится:

Самым большим изменением является то, что шаблоны счетов-фактур теперь используют систему тем для настройки. Вместо непосредственного изменения файлов модуля теперь корректно переопределить их в теме, как шаблоны узлов и страниц.

... и если я не ошибаюсь (прошло несколько месяцев с тех пор, как я работал с UC), счет-фактура - это страница, отображаемая по указанному вами URL-адресу.

Если моя память не удалась (у меня нет установки UC, чтобы проверить себя), возможный обходной путь (по общему мнению, далеко не элегантный, но все же позволяющий вам не изменять код модуля) состоял бы в изменении HTML с помощью jQuery после загрузки страницы.

Более обходной обходной путь - сохранить собственный обратный вызов страницы для этого URL-адреса и просто изменить определение меню в коде UC [да, он все еще взламывает код, но в этом случае вам просто нужно изменить один строка в коде UC и может поддерживать ваш код в отдельном модуле].

НТН, Mac.

...