Функция замены в template.php - как лучше сделать?

Главные вкладки

Аватар пользователя WiseMan WiseMan 24 августа 2009 в 19:59

Для шаблона для ubercart в файле template.php сделал следующее:

<?php
 
if ($vars['template_files'][0] == 'node-product') {
       
$node node_build_content(node_load($vars['nid']));

    

$vars['fusion_uc_image'] = drupal_render($node->content['image']);
    
$vars['fusion_uc_body'] = drupal_render($node->content['body']);
    
$vars['fusion_uc_display_price'] = drupal_render($node->content['display_price']);
    
$vars['fusion_uc_add_to_cart'] = drupal_render($node->content['add_to_cart']);
    
$vars['fusion_uc_weight'] = drupal_render($node->content['weight']);
    
$vars['fusion_uc_dimensions'] = drupal_render($node->content['dimensions']);
    
$vars['fusion_uc_model'] = drupal_render($node->content['model']);
    
$vars['fusion_uc_list_price'] = drupal_render($node->content['list_price']);

//эта строка НЕ РАБОТАЕТ :(
    
$vars['fusion_uc_list_price'] = str_replace('USD'''drupal_render($node->content['list_price'])); 

    

$vars['fusion_uc_sell_price'] = drupal_render($node->content['sell_price']);
    
$vars['fusion_uc_cost'] = drupal_render($node->content['cost']);
    
$vars['fusion_uc_additional'] = drupal_render($node->content);
  }
?>

В шаблоне затем использую <?php print $fusion_uc_image?> и т.п.

Все хорошо и все работает, кроме строки $vars['fusion_uc_list_price'] - мне нужно символ валюты для этой строки убрать. Никак не получается.
Точнее в самом шаблоне легко прокатывает <?php $fusion_uc_list_price str_replace('USD'''$fusion_uc_list_price);?>
Но это неудобно и не правильно, ИМХО.

Может есть другие пути или я не правильно делаю? мне надо заменить символ валюты только для данного поля. В идеале это нужно глобально для любого отображения в ubercart.

Как лучше, кто знает?