4

在 OpenCart 3.0.2.0 中,我试图让类别和产品页面显示每个产品的“SKU”变量。该变量与其他产品数据一起在数据库中,但由于某些不敬的原因,OpenCart 没有显示它的选项。您可以显示产品名称、价格、库存情况等,但不能显示 SKU。

有谁知道如何在 OC 3 中专门执行此操作?他们已经将模板从 PHP 切换到 Twig,我不确定我做错了什么,但我在 OC 2.0 中使用的方法在 3.0 中不起作用。

{{ product.href }} displays the product URL
{{ product.description }} displays the description
{{ product.price }} displays the price
...but {{ product.sku }} or {{ sku }} or {{ product['sku'] }} does NOTHING.
4

2 回答 2

6

在默认的 OpenCart 代码中尝试类似的东西。这在最新的 opencart 版本 3.0.2.0 中运行良好

对于类别页面:

第一步:打开文件catalog/controller/product/category.php

寻找:

'rating'      => $result['rating'],

之后添加:

'sku'         => $result['sku'],


第二步: 打开文件:catalog\language\en-gb(your language)\product\category.php

寻找:

$_['text_price']        = 'Price:';

之后添加:

$_['text_sku']        = 'SKU:';


第三步: 打开文件:catalog/view/theme/default(your theme)/template/product/category.twig

寻找:

<p>{{ product.description }}</p>

之后添加:

{% if product.sku %}
 <p>{{ text_sku }} {{ product.sku }}</p>
{% endif %}



对于产品页面:

第一步:打开文件catalog/controller/product/product.php

寻找:

$data['heading_title'] = $product_info['name'];

之后添加:

$data['sku'] = $product_info['sku'];


第二步: 打开文件:catalog\language\en-gb(your language)\product\product.php

寻找:

$_['text_model']               = 'Product Code:';

之后添加:

$_['text_sku']               = 'SKU:';


第三步: 打开文件:catalog/view/theme/default(your theme)/template/product/product.twig

寻找:

<li>{{ text_model }} {{ model }}</li>

之后添加:

{% if sku %}
<li>{{ text_sku }} {{ sku }}</li>
{% endif %}
于 2017-09-27T06:35:31.233 回答
0

您可以创建自己的修改并将其安装在 opencart 中,并使其在产品页面上显示 SKU 单位。

最好在占位符中输出修改的前端,以便它准确地显示您在主题中想要的位置。

例如,此修改结合了产品页面 SKU 显示代码并将其输出到 theme/.../products.twig 文件,但是它会查找:

<!-- product_sku -->

所以你不必猜测和弄乱不同的东西,只需将此标签放在你的主题文件中并运行修改。

修改链接:https ://github.com/nabtron/opencart-ocmod-sku-product

支持和解释:https ://nabtron.com/opencart-ocmod-product-sku/

(不要忘记压缩 xml 文件本身(而不是文件夹))。

于 2019-03-30T07:11:56.367 回答