简单产品的自定义选项无法显示在订单上
问题描述:
我有简单的产品有几个自定义选项。该选项过程似乎在前端工作正常。所选选项显示在购物车中,价格正确。我下了订单,当我在管理员中把它拉起来时,显示了选项标题,但实际的选择不是。选择显示在发送给我和客户的订单确认电子邮件中。所以他们必须进入管理员。关于他们为什么不在订单或发票上的任何想法?简单产品的自定义选项无法显示在订单上
答
对不起,迟到的答案。在adminhtml模板文件中有一个错误(甚至高达1.6.2)。这是修复。
diff --git a/app/design/adminhtml/default/default/template/sales/items/column/name.phtml b/app/design/adminhtml/default/default/template/sales/items/column/name.phtml
index 7b36ee1..9e1f603 100644
--- a/app/design/adminhtml/default/default/template/sales/items/column/name.phtml
+++ b/app/design/adminhtml/default/default/template/sales/items/column/name.phtml
@@ -41,16 +41,7 @@
<?php if (isset($_option['custom_view']) && $_option['custom_view']): ?>
<?php echo $this->getCustomizedOptionValue($_option); ?>
<?php else: ?>
- <?php $_option = $this->getFormattedOption($_option['value']); ?>
- <?php echo $_option['value']; ?><?php if (isset($_option['remainder']) && $_option['remainder']): ?><span id="<?php echo $_dots = 'dots' . uniqid()?>"> ...</span><span id="<?php echo $_id = 'id' . uniqid()?>"><?php echo $_option['remainder'] ?></span>
- <script type="text/javascript">
- $('<?php echo $_id ?>').hide();
- $('<?php echo $_id ?>').up().observe('mouseover', function(){$('<?php echo $_id ?>').show();});
- $('<?php echo $_id ?>').up().observe('mouseover', function(){$('<?php echo $_dots?>').hide();});
- $('<?php echo $_id ?>').up().observe('mouseout', function(){$('<?php echo $_id ?>').hide();});
- $('<?php echo $_id ?>').up().observe('mouseout', function(){$('<?php echo $_dots ?>').show();});
- </script>
- <?php endif; ?>
+ <?php echo $_option['value']; ?>
<?php endif; ?>
</dd>
<?php endforeach; ?>
答
嗨,这适用于我在1.6.2.0。 CE值
打开此文件的应用程序/设计/ adminhtml /默认/缺省的/模板/销售/项目/列/ name.phtml
-
添加两个ENDIF的以下行;第53行和第55行的声明。
<?php echo $_option['option_value']; ?>
刷新缓存类型并重新加载页面。最后,您可以在您的订购产品详细信息的magento后端/管理面板中看到您的自定义选项。
答
我固定这在1.6.1.0通过修改文件
/app/code/core/Mage/Adminhtml/Block/Sales/Items/Column/Name.php
我从1.7.0拷贝了这个文件,但没有这个问题。 这里的解释是:
在类的声明有完全没有方法,我们需要的是一个getFormattedOption 如果您发现该文件中定义该功能,则跳过此答案。
如果没有,只需插入类中这个功能,所以整个文件必须是这样的:
class Mage_Adminhtml_Block_Sales_Items_Column_Name extends Mage_Adminhtml_Block_Sales_Items_Column_Default
{
/**
* Add line breaks and truncate value
*
* @param string $value
* @return array
*/
public function getFormattedOption($value)
{
$_remainder = '';
$value = Mage::helper('core/string')->truncate($value, 55, '', $_remainder);
$result = array(
'value' => nl2br($value),
'remainder' => nl2br($_remainder)
);
return $result;
}
}
您运行的是什么版本的Magento的? – 2012-02-05 01:28:53
我正在使用CE ver 1.6 – billybjr 2012-02-05 21:27:17
尝试reindex产品平面数据。 – Zyava 2012-02-05 21:39:10