【发布时间】:2011-11-27 23:26:18
【问题描述】:
我有运行自定义字段的 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 表吗?挂钩其他 uc_cart 功能? 谢谢
【问题讨论】:
-
通过执行 print_r (node_load($form['items'][1]['nid']['#value'] ))。我得到类似减去无关的东西
codestdClass Object ( [vid] => 7270 [uid] => 1 [title] => Bai Bu ... [field_product_term_grade] => Array ( [und] => Array ( [ 0] => Array ( [tid] => 4 ) ) ) [field_product_botanical] => Array ( [und] => Array ( [0] => Array ( [value] => Stemonae Radix [format] => [safe_value) ] => Stemonae Radix ) ) ) ...code如何提取 bold**[field_product_term_grade]**bold 的值? -
有人帮忙吗?大约 20 年前,我停止使用 pascal 进行编程,但现在面向对象的东西与以前大不相同。我不知道如何使用 stdClass 对象或访问它们的数据?有什么好的教程吗?在此先感谢...