gpt4 book ai didi

drupal-7 - 将自定义字段添加到购物车显示 - Ubercart 3

转载 作者:行者123 更新时间:2023-12-02 19:31:56 28 4
gpt4 key购买 nike

我有运行自定义字段的 Drupal 7 和 UC 3。我希望能够在购物车中显示这些字段,但似乎无法做到这一点。这是我第一次尝试创建模块!

我尝试在自定义模块中使用 hook_form_alter(&$form, &$form_state, $form_id) {}:

function swcart_form_alter(&$form, &$form_state, $form_id) {
switch($form_id) {
case 'uc_cart_view_form':

// Adding Grade column
$form['items']['#columns']['grade'] = array('cell' => 'Grade', 'weight' => 3.5);

for($i=0; $i < count($form['items']); $i++) {
if(isset($form['items'][$i]['nid'])) {
// Loading the node so we can retrieve the information we need.
$product = node_load($form['items'][$i]['nid']['#value']);

// Adding the 'Grade' to the product that is in the user's cart.
$form['items'][$i]['grade']['#value'] = $product -> field_product_term_data;
}
}
break;
}
}

显示“等级”列,但表中没有数据。我应该怎么办?我必须修改 TAPir 表吗? Hook 其他 uc_cart 函数吗?谢谢

最佳答案

Ubercart 3 API 的这两个链接应该有所帮助: hook_tapir_table_alter uc_cart_view_table

在第一个链接中,有一个添加数据列的示例。

编辑:使用此类代码完成了为每 1 个产品列添加价格的工作。希望这能帮助某人克服 ubercart 的不灵 active 。

function YOUR_MODULE_NAME_form_uc_cart_view_form_alter(&$form, &$form_state) {
$form['items']['#columns']['remove']['weight'] = 6;
$form['items']['#columns']['total']['weight'] = 5;
$form['items']['#columns']['qty']['weight'] = 4;

$form['items']['#columns']['price'] = array(
'cell' => t('Price'),
'weight' => 3,
);
}
function YOUR_MODULE_NAME_tapir_table_alter(&$table, $table_id) {
if ($table_id == 'uc_cart_view_table') {
foreach (element_children($table) as $key) {
if (!empty($table['#parameters'][1][$key]['nid'])) {
$node = node_load($table['#parameters'][1][$key]['nid']['#value']);
$table[$key]['price'] = array(
'#markup' => theme('uc_product_price',array('element' => array('#value' => $node->sell_price))),
);
}
}
}
}

关于drupal-7 - 将自定义字段添加到购物车显示 - Ubercart 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7602347/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com