php - Prestashop 向产品功能添加超链接或图像

标签 php mysql hyperlink prestashop

您好,我正在尝试为 prestashop 添加指向产品功能的自定义链接。

这是我尝试过的:

编辑 /classes/FeatureValue.php

// Lang fields

'value' => array('type' => self::TYPE_STRING, 'lang' => true, 'validate' => 'isGenericName', 'required'
  => true, 'size' => 255),

对此

// Lang fields

'value' => array('type' => self::TYPE_NOTHING, 'lang' => true, 'validate' => 'isAnything', 'required'
  => true, 'size' => 255),

还有这个文件: /themes/<your theme folder>/product.tpl

来自:

{foreach from=$features item=feature}
                    <tr class="{cycle values="odd,even"}">
                        {if isset($feature.value)}
                        <td>{$feature.name|escape:'html':'UTF-8'}</td>
                        <td>{$feature.value|escape:'html':'UTF-8'}</td>
                        {/if}
                    </tr>
                    {/foreach}

对此:

{foreach from=$features item=feature}
                    <tr class="{cycle values="odd,even"}">
                        {if isset($feature.value)}
                        <td>{$feature.name|escape:'html':'UTF-8'}</td>
                        <td>{$feature.value|escape:'UTF-8'}</td>
                        {/if}
                    </tr>
                    {/foreach}

还有这个文件: admin1234/themes/default/template/controllers/products/features.tpl

改变了这个:

<textarea class="custom_{$available_feature.id_feature}_ALL textarea-autosize"  name="custom_{$available_feature.id_feature}_ALL"
                                cols="40" style='background-color:#CCF' rows="1" onkeyup="{foreach from=$languages key=k item=language}$('.custom_{$available_feature.id_feature}_{$language.id_lang}').val($(this).val());{/foreach}" >{$available_feature.val[1].value|escape:'html':'UTF-8'|default:""}</textarea>

对此:

<textarea class="custom_{$available_feature.id_feature}_ALL textarea-autosize"  name="custom_{$available_feature.id_feature}_ALL"
                                cols="40" style='background-color:#CCF' rows="1" onkeyup="{foreach from=$languages key=k item=language}$('.custom_{$available_feature.id_feature}_{$language.id_lang}').val($(this).val());{/foreach}" >{$available_feature.val[1].value|escape:'UTF-8'|default:""}</textarea>

问题是,当我将值添加到自定义字段时,在我单击“保存”后它会消失并且不会插入到数据库中。 但是,如果我将超链接添加到定义的功能,那么它就会保存在数据库中,我可以使用它。 但是因为我想添加多个超链接/高度,所以我不能做 100 个预定义的组合。

如果我不清楚,我深表歉意,如果您需要更多信息,请告诉我。 Prestashop 版本:1.6.0.11

最佳答案

编辑
类/Product.php

寻找

Add new feature to product

和2行上查找

$row = array('id_feature_value' => (int)$id_value, 'id_lang' => (int)$lang, 'value' => pSQL($cust));

改变

$row = array('id_feature_value' => (int)$id_value, 'id_lang' => (int)$lang, 'value' => $cust);

我只是删除 并且您自己的所有其他更改都是正确的。在 1.6 版本中进行此更改自定义 html 工作正常!
只需清除缓存即可。 . .

出于某种原因检查

/override/classes/

如果您看到 Product.php 和 FeatureValue.php 也对它们进行了更改

关于php - Prestashop 向产品功能添加超链接或图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30889806/

相关文章:

mysql - 基于第三个表计算 2 个表的结果

java - 尝试更新 SQL 数据库条目时收到 SQL 语法错误。我如何弄清楚这里出了什么问题?

php - MySQLi - 试图获取非对象的属性

html - 如何创建带有下划线的链接,其中下划线被字母切割?

php - Zend Framework 1.12 Db Select - 嵌套 WHEREs 在条件中使用问号的多个值

php - 从数据库中删除特定图像[简单php/mySql]

css - 当我将鼠标悬停在一个 div 上时,我希望它的背景从黑色变为白色,链接的文本从白色变为黑色

r - 使用 R-package 'openxlsx' 从 Excel 表中提取链接

php - Magento 通过在 foreach 内循环来更新数组

php - 简单的 html DOM 如何在特定的 div 中获取 <source> 中的 src?