Я использую последние версии Drupal 7 и Ubercart 3. Я пытаюсь получить дату из переменной $ content для использования в модуле. В частности, я пытаюсь получить данные из настраиваемого поля продукта и отобразить эти данные в виде определенных атрибутов / опций продукта.
Суть в том, чтобы создать собственное описание для каждого атрибута для каждого продукта.
Кажется, переменная $ content недоступна из uc_attribute.module. Использование $ content ['field_original_size']; возвращает: неопределенное содержимое переменной. Если я использую функцию рендеринга, мне не возвращаются ни ошибки, ни данные. Вот что у меня есть:
function theme_uc_attribute_option($variables) {
$original_size = render($content['field_original_size']);
if($variables['option'] == 'Original'){
$output = $variables['option'];
$output .= ', ' . $original_size;
if ($variables['price']) {
$output .= ', ' . $variables['price'];
}
}
else{
$output = $variables['option'];
if ($variables['price']) {
$output .= ', ' . $variables['price'];
}
}
return $output;
}
Кажется, что самый простой способ сделать это, возможно, с помощью функции token_replace (), так что вот то, что я сейчас пытаюсь, но не работает. Ошибок нет, но токен не заменяется.
function theme_uc_attribute_option($variables) {
if($variables['option'] == 'Original'){
$output = $variables['option'];
if ($variables['price']) {
$output .= ', ' . '[node:field-medium]';
$output .= ', ' . $variables['price'];
token_replace($output);
}
}
else{
$output = $variables['option'];
if ($variables['price']) {
$output .= ', ' . $variables['price'];
}
}
return $output;
}