Prestashop 如何在外部数据库中添加类别和产品表单?
我只是想知道如何添加或链接其他数据库中的类别和产品。新的数据库表字段与现有的prestashop表几乎相同。任何帮助、提示或任何有用的文章?如果将外部数据库“添加或链接”到Prestashop是指使Prestashop直接连接到外部数据库,我建议不要这样做,因为这将需要更改Prestashop核心文件,使其与Prestashop的未来升级不兼容,从而失去开源的主要优势之一 相反,我推荐的方法是将外部数据库“同步”到Prestashop数据库中。这个问题并不清楚外部数据库是否位于另一个系统中,您只是希望能够在prestashop(目录模式)中看到相同的类别和产品,或者相反,您希望停止使用连接到外部数据库的应用程序,并开始使用prestashop中的数据 在第一个场景(实时外部数据库)中,最好的选择是编写一个脚本,将外部数据库中的数据馈送到Prestashop数据库中。如果两个数据库相似,脚本应该非常简单。连接到两个数据库,查询外部数据库,并插入到Prestashop数据库中进行任何必要的修改。cron作业可以按要求的频率执行该脚本(例如,每天一次)。Prestashop必须处于目录模式,因此不能下订单(两个系统都不能修改数据,否则您将得到两组不同的数据) 在第二个场景中,外部数据库不再处于活动状态,最好的方法是将数据迁移到Prestashop数据库中。对于迁移,有两种方法: 1) 将外部数据库导出为CSV文件,并使用prestashop管理(高级参数->导入CSV)中默认包含的导入工具将其导入prestashop。此导入工具允许您将外部数据库中的字段分配到Prestashop数据库中的正确字段中,并负责处理与Prestashop中其他表的所有依赖关系。如果您不需要以任何方式转换外部数据,那么我建议您使用这种方法 2) 创建读取外部数据库的脚本,执行可能需要的任何数据转换,然后将转换后的数据插入Prestashop数据库。这种方法更复杂,但它使您能够灵活地在需要时转换数据。您必须了解Prestashop中的所有表依赖项,以保持正确的数据库完整性。这是我在将商店迁移到Prestashop时实施的方法,因为我们必须进行大量的数据转换,以充分利用Prestashop功能,如分层导航、产品比较等 答案基于我将数据迁移到Prestashop的真实体验。我希望这会有所帮助。如果将外部数据库“添加或链接”到Prestashop,您的意思是使Prestashop直接连接到外部数据库,我建议不要这样做,因为这将需要更改Prestashop核心文件,使其与Prestashop的未来升级不兼容,从而失去开源的主要优势之一 相反,我推荐的方法是将外部数据库“同步”到Prestashop数据库中。这个问题并不清楚外部数据库是否位于另一个系统中,您只是希望能够在prestashop(目录模式)中看到相同的类别和产品,或者相反,您希望停止使用连接到外部数据库的应用程序,并开始使用prestashop中的数据 在第一个场景(实时外部数据库)中,最好的选择是编写一个脚本,将外部数据库中的数据馈送到Prestashop数据库中。如果两个数据库相似,脚本应该非常简单。连接到两个数据库,查询外部数据库,并插入到Prestashop数据库中进行任何必要的修改。cron作业可以按要求的频率执行该脚本(例如,每天一次)。Prestashop必须处于目录模式,因此不能下订单(两个系统都不能修改数据,否则您将得到两组不同的数据) 在第二个场景中,外部数据库不再处于活动状态,最好的方法是将数据迁移到Prestashop数据库中。对于迁移,有两种方法: 1) 将外部数据库导出为CSV文件,并使用prestashop管理(高级参数->导入CSV)中默认包含的导入工具将其导入prestashop。此导入工具允许您将外部数据库中的字段分配到Prestashop数据库中的正确字段中,并负责处理与Prestashop中其他表的所有依赖关系。如果您不需要以任何方式转换外部数据,那么我建议您使用这种方法 2) 创建读取外部数据库的脚本,执行可能需要的任何数据转换,然后将转换后的数据插入Prestashop数据库。这种方法更复杂,但它使您能够灵活地在需要时转换数据。您必须了解Prestashop中的所有表依赖项,以保持正确的数据库完整性。这是我在将商店迁移到Prestashop时实施的方法,因为我们必须进行大量的数据转换,以充分利用Prestashop功能,如分层导航、产品比较等 答案基于我将数据迁移到Prestashop的真实体验。我希望有帮助。您可以添加类别Prestashop 如何在外部数据库中添加类别和产品表单?,prestashop,prestashop-1.6,Prestashop,Prestashop 1.6,我只是想知道如何添加或链接其他数据库中的类别和产品。新的数据库表字段与现有的prestashop表几乎相同。任何帮助、提示或任何有用的文章?如果将外部数据库“添加或链接”到Prestashop是指使Prestashop直接连接到外部数据库,我建议不要这样做,因为这将需要更改Prestashop核心文件,使其与Prestashop的未来升级不兼容,从而失去开源的主要优势之一 相反,我推荐的方法是将外部数据库“同步”到Prestashop数据库中。这个问题并不清楚外部数据库是否位于另一个系统中,您只
public function initContent()
{
parent::initContent();
$temp_categs = array(); //
//fetch data into $temp_catgs from the external db with the help mysqli_connect or whatever the driver - never modify presta db settings - write php code for db connection to external db and fetch
//loop through the fetched categories
foreach($temp_categs as $categ){
$new_categ = new Category();
//set all the field values
$new_categ->name = $categ['name'];
$new_categ->id_parent = $categ['id_parent'];
$new_categ->active = true;
$new_categ->field2 = $categ['field2'];
$new_categ->field3 = $categ['field3'];
//save the category - a category with new id will be created in prestashop
$new_categ->save();
}
}
}