0

我很抱歉这个可怜的问题,但我不知道从哪里开始。

基本上我有一个产品模板,它使用 15 个自定义选项作为名称,15 个用于 T 恤尺寸,15 个用于 T 恤编号。

使用 jquery,选项隐藏在基于产品数量的个性化设置中。然后它为大小设置一个默认的 * 或 none。

唯一的问题是,如果客户在电子邮件和客户订单中说 3 件 T 恤,他们将看到一长串他们没有选择的选项。

我想知道如果它等于 * 或没有,是否有办法排除该选项。

在此处输入图像描述

解决了以下问题

    <?php
$optionvalue = $option['value'];
$array = array('None','*');
if(!in_array($optionvalue,$array)){
     echo $option['label'];
} 
?>

<?php
$optionvalue = $option['value'];
$array = array('None','*');
if(!in_array($optionvalue,$array)){
     echo (isset($option['print_value']) ? $option['print_value'] : nl2br($this->escapeHtml($option['value'])));
} 
?>
4

2 回答 2

0

通过使用数组和 if 语句以及 dagfr 指向函数位置的指针来解决。更新了 PDF 功能以及电子邮件,carso 上的屏幕现在看起来很整洁。

       <?php
$optionvalue = $option['value'];
$array = array('None','*');
if(!in_array($optionvalue,$array)){
     echo $option['label'];
} 
?>

<?php
$optionvalue = $option['value'];
$array = array('None','*');
if(!in_array($optionvalue,$array)){
     echo (isset($option['print_value']) ? $option['print_value'] : nl2br($this->escapeHtml($option['value'])));
} 
?>
于 2013-09-11T14:20:50.430 回答
0

这个有可能。

您必须修改电子邮件的模板。

基础在这里:

magento\app\design\frontend\base\default\template\email\order\items\order\

这是一个订单,不要忘记发票,装运和creditmemo。

<?php foreach ($this->getItemOptions() as $option): ?>
        <dt><strong><em><?php echo $option['label'] ?></em></strong></dt>
        <dd style="margin:0; padding:0 0 0 9px;">
            <?php echo (isset($option['print_value']) ? $option['print_value'] : nl2br($this->escapeHtml($option['value']))) ?>
        </dd>
        <?php endforeach; ?>

$option['value']只需在or上添加一个控件$option['print_value']

也许在 pdf 上具有相同行为的 Pdf 函数也需要修改

当然因为它是原生的核心功能,所以不要直接修改代码,而是创建你的模块来扩展和替换它。

于 2013-07-25T20:25:08.963 回答