Opencart - 如何在产品页面中显示可用日期

时间:2013-12-04 16:33:39

标签: php date opencart product

想要在审核或产品价格后使用产品页面中的可用日期...

如何从db

插入可用日期

我编辑了目录/ controller / product / product.php

$available = $this->db->query("SELECT date_available FROM " . DB_PREFIX . "product WHERE product_id = '" . (int)$product_id . "'");
     if ($available->num_rows) {
        $date_available = $available->row['date_available'];   
          $this->data['date_available'] = date($this->language->get('date_format_short'), strtotime($date_available));
     }else{
           $this->data['date_available'] = '';
     }

和catalog / view / theme / default / product / product.tpl

<?php echo $date_available; ?>

但没有发生任何事情。

如何在产品页面中显示可用日期? 以及如何更改日期格式(如04/12/2013或11.04.2013)

大家好,我做了你说的话并得到了约会。 但它只显示'01 / 01/1970' 我在“date_available”列之后添加了一个列'date_end'到db。 编辑了一些文件;

管理员/控制器/目录/ product.php 旧的:

$this->data['entry_date_available'] = $this->language->get('entry_date_available');
    $this->data['entry_quantity'] = $this->language->get('entry_quantity');

新的:

$this->data['entry_date_available'] = $this->language->get('entry_date_available');
    $this->data['entry_date_end'] = $this->language->get('entry_date_end');
    $this->data['entry_quantity'] = $this->language->get('entry_quantity');

管理员/语言/ mylanguage /目录/ product.php

加入:

$_['entry_date_end']        = 'Bitiş Süresi';

管理员/模型/目录/ product.php 已添加date_end = '" . $this->db->escape($data['date_end']) . "'

date_available之后

 第4行和第127行

....d'] . "', date_available = '" . $this->db->escape($data['date_available']) . "', date_end = '" . $this->db->escape($data['date_end']) . "', manufacturer_id....

管理员/视图/模板/目录/ product_form.tpl

老人:

<tr>
          <td><?php echo $entry_date_available; ?></td>
          <td><input type="text" name="date_available" value="<?php echo $date_available; ?>" size="12" class="date" /></td>
        </tr>
        <tr>
          <td><?php echo $entry_dimension; ?></td>
          <td><input type="text" name="length" value="<?php echo $length; ?>" size="4" />
            <input type="text" name="width" value="<?php echo $width; ?>" size="4" />
            <input type="text" name="height" value="<?php echo $height; ?>" size="4" /></td>
        </tr>

新的:

<tr>
          <td><?php echo $entry_date_available; ?></td>
          <td><input type="text" name="date_available" value="<?php echo $date_available; ?>" size="12" class="date" /></td>
        </tr>
        <tr>
          <td><?php echo $entry_date_end; ?></td>
          <td><input type="text" name="date_end" value="<?php echo $date_end; ?>" size="12" class="date" /></td>
        </tr>
        <tr>
          <td><?php echo $entry_dimension; ?></td>
          <td><input type="text" name="length" value="<?php echo $length; ?>" size="4" />
            <input type="text" name="width" value="<?php echo $width; ?>" size="4" />
            <input type="text" name="height" value="<?php echo $height; ?>" size="4" /></td>
        </tr>

所以我想显示date_end,但只是在每个产品中都有'01 / 01/1970'。 那么错误在哪里?

2 个答案:

答案 0 :(得分:0)

如果您在模板中进行编辑以获取任何返回的产品变量,则可以简单地使用$ product_info变量。例如,要以简短格式显示日期,您可以使用

<?php echo date_format($product_info['date_available'], $this->language->get('date_format_short')); ?>

答案 1 :(得分:0)

我做了以下教程。

opencart tutorial

谢谢大家