1) Искать в модулях уберкарта, менять (или, если их нет, то создавать) файлы *.tpl.php, которые выводят структуру этих страниц.
2) править файлы стилей
Искать в модулях уберкарта, менять файлы *.tpl.php
В корне неверно.
Верным будет создавать свои файлы *.tpl.php внутри своей темы. Так нет риска потерять наработки при очередном обновлении ubercart. Ну и еще несколько плюсов, о которых умолчу.
Это понятно, что в теме надо создавать свои файлы. Но какие?
В теме есть вот что:
admin.itpl.php
customer.itpl.php
uc_order-admin.tpl.php
uc_order-customer.tpl.php
uc_order.tpl.php
Но их изменение почему-то никак не отражается на работе сайта
Нащупал, что uc_order-customer.tpl.php - это печатная форма заказа, видимо админ - то что шлется админам. А где темизируются сами списки заказов и собственно форма заказа на сайте, пока не понятно
А вообще, чтобы легко решать такие вопросы, поставьте Мозилу с плагином FireFox и научитесь анализировать CSS. В Друпале очень многие задачи решаются элементарной правкой стиля.
Вышел на этот пост в поисковике. Понял, что решения никто не дает. Спешу поделиться увиденным:
1. В модуле uc_order нет шаблона для вывода списка заказов по поути /user/[nid]/orders
2. file uc_order.module
$result = pager_query("SELECT o.order_id, o.created, os.title, SUM(op.qty) AS products, o.order_total AS total FROM {uc_orders} AS o LEFT JOIN {uc_order_statuses} AS os ON o.order_status = os.order_status_id LEFT JOIN {uc_order_products} AS op ON o.order_id = op.order_id WHERE o.uid = %d AND o.order_status IN ". uc_order_status_list('general', TRUE) ." GROUP BY o.order_id, o.created, os.title, o.order_total". tablesort_sql($header), 20, 0, "SELECT COUNT(*) FROM {uc_orders} WHERE uid = %d AND order_status NOT IN ". uc_order_status_list('specific', TRUE), $user->uid);
// Build a table based on the customer's orders. while ($order = db_fetch_object($result)) { $context['subject'] = array('order' => $order);
4. Хуков нет - это очень плохо! Варианты: править функцию колбек - не круто. При обновлении модуля - все летит нафиг; парсить в хуке preprocess_node/page и выводить в шаблон.
Комментарии
1) Искать в модулях уберкарта, менять (или, если их нет, то создавать) файлы *.tpl.php, которые выводят структуру этих страниц.
2) править файлы стилей
В корне неверно.
Верным будет создавать свои файлы *.tpl.php внутри своей темы. Так нет риска потерять наработки при очередном обновлении ubercart. Ну и еще несколько плюсов, о которых умолчу.
Согласен, неверно выразил свою мысль, ибо очень торопился.
Исходники любых файлов шаблонов, модулей и т.д. тьрогать не нужно.
Существует много способов всё переопределить, не трогая исходник.
Это понятно, что в теме надо создавать свои файлы. Но какие?
В теме есть вот что:
admin.itpl.php
customer.itpl.php
uc_order-admin.tpl.php
uc_order-customer.tpl.php
uc_order.tpl.php
Но их изменение почему-то никак не отражается на работе сайта
Может какая-то документация есть?
То что вы привели - это файлы, которые собирают письма администраторам и покупателям.
Нащупал, что uc_order-customer.tpl.php - это печатная форма заказа, видимо админ - то что шлется админам. А где темизируются сами списки заказов и собственно форма заказа на сайте, пока не понятно
подписываюсь!
У кого-то есть решение?
У меня тоже вопрос по темизации, может кто знает:
как вывести форму ввода количества товара и кнопку "Добавить в корзину" в одну строчку?
Нужно добавить стиль:
display: inline-block;
}
А вообще, чтобы легко решать такие вопросы, поставьте Мозилу с плагином FireFox и научитесь анализировать CSS. В Друпале очень многие задачи решаются элементарной правкой стиля.
Вышел на этот пост в поисковике. Понял, что решения никто не дает. Спешу поделиться увиденным:
1. В модуле uc_order нет шаблона для вывода списка заказов по поути /user/[nid]/orders
2. file uc_order.module
<?php
/*uc_order_menu*/
$items['user/%user/orders'] = array(
'title' => 'Orders',
'description' => 'View your order history.',
'page callback' => 'uc_order_history',
'page arguments' => array(1),
'access callback' => 'uc_order_can_view_order',
'access arguments' => array(1),
'type' => MENU_LOCAL_TASK,
'file' => 'uc_order.admin.inc',
);
?>
3. file uc_order.admin.inc
<?php
$header = array(
$rows = array();
$context = array(
$result = pager_query("SELECT o.order_id, o.created, os.title, SUM(op.qty) AS products, o.order_total AS total FROM {uc_orders} AS o LEFT JOIN {uc_order_statuses} AS os ON o.order_status = os.order_status_id LEFT JOIN {uc_order_products} AS op ON o.order_id = op.order_id WHERE o.uid = %d AND o.order_status IN ". uc_order_status_list('general', TRUE) ." GROUP BY o.order_id, o.created, os.title, o.order_total". tablesort_sql($header), 20, 0, "SELECT COUNT(*) FROM {uc_orders} WHERE uid = %d AND order_status NOT IN ". uc_order_status_list('specific', TRUE), $user->uid);
// Build a table based on the customer's orders.
$link = l($order->order_id, 'user/'. $user->uid .'/order/'. $order->order_id);
$rows[] = array(
function uc_order_history($user) {
drupal_set_title(t('My order history'));
array('data' => t('Date'), 'field' => 'o.created', 'sort' => 'desc'),
array('data' => t('Order #'), 'field' => 'o.order_id'),
array('data' => t('Status'), 'field' => 'os.title'),
array('data' => t('Products'), 'field' => 'products'),
array('data' => t('Total'), 'field' => 'o.order_total')
);
'revision' => 'themed-original',
'type' => 'amount',
);
while ($order = db_fetch_object($result)) {
$context['subject'] = array('order' => $order);
if (
user_access('view all orders')) {$link .= '<span class="order-admin-icons">'. uc_order_actions($order, TRUE) .'</span>';
}
array('data' => format_date($order->created, 'custom', variable_get('uc_date_format_default', 'm/d/Y'))),
array('data' => $link, 'nowrap' => 'nowrap'),
array('data' => check_plain($order->title)),
array('data' => (!is_null($order->products) ? $order->products : 0), 'align' => 'center'),
array('data' => uc_price($order->total, $context), 'align' => 'right'),
);
}
if (empty(
$rows)) {$rows[] = array(array('data' => t('No orders available.'), 'colspan' => 5));
}
return
theme('table', $header, $rows, array('class' => 'uc-order-history')). theme('pager', NULL, 20, 0);
}
?>
4. Хуков нет - это очень плохо! Варианты: править функцию колбек - не круто. При обновлении модуля - все летит нафиг; парсить в хуке preprocess_node/page и выводить в шаблон.
<?php
function phptemplate_preprocess_page(&$vars) {
_print($vars, __FILE__, __LINE__); //PHP not supported
}
#Array
#(
# [template_files] => Array
# (
# [0] => page-user
# [1] => page-user-1
# [2] => page-user-orders
# )
#....
#)
?>
т.е. можно создать шаблон либо page-user.php.tpl, либо page-user-orders.php.tpl и там уже верстку впихивать...
Можно так же вывести Views список заказов просто Что гораздо проще...