我已经为Prestashop 1.7创建了一个模块,以便在管理产品页面中添加一个新字段。由于缺乏适当的留档,我想问正确的方法来添加我的自定义字段,选择。我想保存和更新产品保存。
我使用下面的代码添加一个包含表单的tpl
public function hookDisplayAdminProductsExtra($params) {
$this->smarty;
$available_items = $this->getAvailableBadges();
$id_product = Tools::getValue('id_product');
$this->context->smarty->assign('items_number', $available_items);
return $this->display(__FILE__, '/views/templates/admin/admin_products.tpl');
}
问题是我不知道如何使其覆盖产品。php类,以获得我的$field以及如何为tpl创建表单元素。
我想要创建的表单就是这样的
<select name="" id="">
{foreach from=$items_number item=option}
<option value="{$option}">
{$option}
</option>
{/foreach}
</select>
很抱歉缺少信息,但我发现创建模块的新方法非常混乱。提前谢谢
要覆盖产品类,请执行以下操作:
在override/classes中创建一个文件“Product.php”/
并添加以下内容:
//override the class
class Product extends ProductCore {
//add your attribute
public $field_name;
//override the construct function
public function __construct($id_product = null, $full = false, $id_lang = null, $id_shop = null, \Context $context = null) {
//add your custom field to the array $definitions['fields']
self::$definition['fields']['field_name'] = [
'type' => self::TYPE_STRING,
'lang' => true, //if you have multiple languages on your site
'required' => false,
'size' => 255
];
}
}
然后,在数据库中添加一个新条目,如果lang设置为false,则在ps_产品中添加“field_name”,如果lang设置为true,则在ps_产品中添加“field_name”。
您有不同的类型:“类型字符串”、“类型HTML”、“类型布尔”、“类型INT”。。。我不知道详尽的清单。根据您选择的类型,您必须在数据库中创建正确的列类型(“VARCHAR”、“TEXT”和…)
在论坛(stackoverflow,https://www.prestashop.com/forums/)但在类似这样的博客上:https://www.h-hennes.fr/blog/
问题内容: 我在admin.py中有一个带有以下类的django应用程序: 我想将这些文件用于添加页面,但将不同的字段用于更改页面。我怎样才能做到这一点? 问题答案: 首先看一下ModelAdmin类的源代码和位于中的方法。您可以覆盖这些方法,并使用kwargs获得所需的行为。例如:
我试图添加一个文件上传随着无线电输入在一个自定义的wooCommerce页面;其中所有的产品都显示在列表视图中。 自定义页面代码: 用于在列表视图中显示为funtions.php中的不同项/产品的变体 我能够将无线电值添加到购物车 请看一看: 这里是AJAX PHP 这是编辑过的js 此页面仅可供某些用户访问,因此它具有不同的输入字段,价格与单个产品页面对应。客户端不喜欢刷新此页面,所以我不得不添
我在我的WooCommerce产品中添加了一个自定义字段,就像在这个问题/答案中: 在WooCommerce的简短描述之前显示自定义产品字段。 是否可以将此自定义字段添加到产品批量编辑特别页面(可从管理产品列表页面访问)?
我正在寻找一种方法,以插入之间的产品标题和它的简短说明在WooCommerce的产品页面自定义内容。到目前为止,我只能使用以下代码在简短描述的开头添加自定义内容: 但是,我需要这个内容在产品标题和简短描述标题之间,而不是在最后一个标题下面。我想我用错了钩子,但是我试过的其他几个钩子不起作用。有什么想法吗?
需要新增2个页面 第一个是WebContent/page/simple_role.jsp, 这是authority.jsp页面的外框 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.
在Woocommerce结帐部分,我试图添加一个复选框,以添加其他产品。 我有一个工作代码,添加费用并在单击复选框时更新购物车,但我希望它添加一个产品而不是附加费: 这是复选框的代码 代码是有效的… 现在,我尝试更改代码以添加产品: 但是没有成功。任何帮助将不胜感激。