如何在prestashop的后台添加新字段?
具体来说,我想在BO中插入一个文本字段:Orders-> Statuses->在状态名称下添加新订单状态。
为了做到这一点,我必须修改哪些文件?任何人都可以描述完整的程序吗?
由于
答案 0 :(得分:1)
我正在使用Prestashop版本1.6.1.2并使用以下步骤添加了一个文本字段。您需要在核心文件中进行更改。您必须在数据库的一个表中添加字段,并在类和控制器文件中进行一些更改。
以下是执行相同操作的步骤。我有adde field' my_custom_field'。
ALTER TABLE {YOUR_DB_PREFIX}order_state ADD my_custom_field VARCHAR(50) NOT NULL;
代码
public $deleted = 0;
添加此代码snipet
public $my_custom_field;
代码
'deleted' => array('type' => self::TYPE_BOOL, 'validate' => 'isBool'),
添加此代码snipet
'my_custom_field' => array('type' => self::TYPE_STRING),
在函数 initOrderStatutsList()
中在此代码之后
'name' => array(
'title' => $this->l('Name'),
'width' => 'auto',
'color' => 'color'
),
添加此代码
'my_custom_field' => array(
'title' => $this->l('My Custom Field'),
'width' => 'auto',
),
在函数 renderForm()
中在此代码之后
array(
'type' => 'text',
'label' => $this->l('Status name'),
'name' => 'name',
'lang' => true,
'required' => true,
'hint' => array(
$this->l('Order status (e.g. \'Pending\').'),
$this->l('Invalid characters: numbers and').' !<>,;?=+()@#"{}_$%:'
)
),
添加此代码
array(
'type' => 'text',
'label' => $this->l('My Custom field'),
'name' => 'my_custom_field',
),
此处建议进行更改。希望这可以帮助你:)