prestashop 对数据库的操作还是封闭得比较严谨的,刚开始接触prestashop的时候
本文将以最简单的方式描述添加一个字段整个过程. 在表中新建一个字段.
ALTER TABLE `category_lang` ADD `link_keywords` TEXT NULL AFTER `link_rewrite` ;
接着需要修改clases/Category.php 文件
public $link_keywords;
然后在protected $fieldsValidateLang 这个数组中添加一个
'link_keywords'=>'isCleanHtml'
(按你自己的需要,更改类型.还有fieldsSize、fieldsValidate、fieldsRequiredLang、fieldsSizeLang 然后找到方法
public fucntion getTranslationsFieldsChild()
在里面的$fieldsArray数组中加上 link_keywords;
最后一步,需要在后台的分类表单添加我们这个字段的表单控件.
/*------------------------Links Keywords-------------------------------*/
echo ' <div style="color: rgb(139, 0, 0);"<'.$this->l('链接关键词:').' </label> <div style="color: rgb(139, 0, 0);"<'; foreach ($languages as $language) echo '<div id="clink_keywords_'.$language['id_lang'].'" style="display: '.($language['id_lang'] ==$defaultLanguage ? 'block' : 'none').'; float: left;"> <textarea name="link_keywords_'.$language['id_lang'].'" id="link_keywords_'.$language['id_lang'].'" rows="8" cols="50" />'.htmlentities($this->getParentValue($obj, 'link_keywords', intval($language['id_lang'])), ENT_COMPAT, 'UTF-8').'</textarea> <span name="help_box">'.$this->l('只需要添加关键则可,不用的关键词使用分号[;]隔开,例如: shoes;air jordan').'<span style="color: rgb(139, 0, 0);"<'; $this->displayFlags($languages, $defaultLanguage, $langtags, 'clink_keywords'); echo '<p style="clear:both;">'.$this->l('只需要添加关键词则可,关键词之间使用分号[;]隔开,例如: shoes;air jordan').'</p>'; /*----------------------------End-------------------------------*/ (责任编辑:最模板) |