OpenCart - 中文论坛

标题: OpenCart 1.5.1.x 产品批量上传 导出工具 [打印本页]

作者: sunboy    时间: 2012-3-20 19:49
标题: OpenCart 1.5.1.x 产品批量上传 导出工具
OpenCart 1.5.1.x 产品批量上传 导出工具



针对OpenCart 1.5.1 以上版本

首先下载文件然后覆盖opencart 目录
文件下载地址:
OpenCart产品导入导出1.5.1.x.rar (812.3 KB, 下载次数: 437)


覆盖后,按以下步骤安装使用:

第一步:
修改语言文件
文件位置:admin\language\english\common\header.php
插入一行:

1.
$_['text_export']                        = 'Import/Export Tool';


第二步:
打开文件
admin\controller\common\header.php
加入一行 大约 99行


Source code

   1.
$this->data['text_zone'] = $this->language->get('text_zone');

//后面加入

3.
$this->data['text_export'] = $this->language->get('text_export');



第三步:
打开
\admin\controller\common\header.php

Source code
1.
//大约 113行

$this->data['backup'] = $this->url->link('tool/backup', 'token=' . $this->session->data['token'],
'SSL');
//的后面加入

$this->data['export'] = $this->url->link('tool/export', 'token=' . $this->session->data['token'],
'SSL');


第四步:


打开文件
admin\view\template\common\header.tpl

找到
  <li><a href=”<?php echo $backup; ?>”><?php echo $text_backup; ?></a></li>
在后面加入
Source code
1.
<li><a href="<?php echo $export; ?>"><?php echo $text_export; ?> </a></li>


最后一步就是设置执行权限了
System=>User Group=>Top Administrator
编辑 Top Administrator
选中 tool/export  保存即可

到此安装完成

打开后台 System=》Import/Export Tool



另外共享一个导出CVS格式 Import/Export Tool
兼容版本:v1.5.0, v1.5.0.1, v1.5.0.2, v1.5.0.3, v1.5.0.4, v1.5.0.5, v1.5.1, v1.5.1.1, v1.5.1.2, v1.5.1.3
大家可以下载测试
CSVimportexport__OCv15x.zip (9.06 KB, 下载次数: 318)


导入后不覆盖系统产品的导入导出工具
https://opencart.cn/app/tools/ope ... singlelang-adv.html
作者: sl17951    时间: 2012-3-21 21:26
不错的分享哈。 支持
作者: sl17951    时间: 2012-3-22 03:30
PHP Fatal Error:  Call to undefined method PHPExcel_Reader_CSV::setReadDataOnly() in *****************2012\admin\model\tool\export.php on line 1481
咋整呢?
作者: ﹎.Up    时间: 2012-3-22 14:21
本帖最后由 ﹎.Up 于 2012-3-22 14:34 编辑
sl17951 发表于 2012-3-22 03:30
PHP Fatal Error:  Call to undefined method PHPExcel_Reader_CSV::setReadDataOnly() in *************** ...


这个问题主要是因为使用 windows 虚拟主机 的原因造成的,windows下禁用了 一些php函数 导致程序运行错误,

解决方法如下: (我没有windows主机测试,应该可以解决,大家试试如果不行在问我)

找到文件:

\opencart\admin\model\tool\export.php

找到

function upload( $filename ) {
....中间省略
}

把这段替换为:
  1. function upload( $filename ) {
  2.                 global $config;
  3.                 global $log;
  4.                 $config = $this->config;
  5.                 $log = $this->log;
  6.                 set_error_handler('error_handler_for_export',E_ALL);
  7.                 register_shutdown_function('fatal_error_shutdown_handler_for_export');
  8.                 $database =& $this->db;
  9.                 ini_set("memory_limit","512M");
  10.                 ini_set("max_execution_time",180);
  11.                 //set_time_limit( 60 );
  12.                 //chdir( '../system/PHPExcel' );
  13.                 require_once( '../system/PHPExcel/Classes/PHPExcel.php' );
  14.                 //chdir( '../../admin' );
  15.                 $inputFileType = PHPExcel_IOFactory::identify($filename);
  16.                 $objReader = PHPExcel_IOFactory::createReader($inputFileType);
  17.                 $objReader->setReadDataOnly(true);
  18.                 $reader = $objReader->load($filename);
  19.                 $ok = $this->validateUpload( $reader );
  20.                 if (!$ok) {
  21.                         return FALSE;
  22.                 }
  23.                 $this->clearCache();
  24.                 $ok = $this->uploadImages( $reader, $database );
  25.                 if (!$ok) {
  26.                         return FALSE;
  27.                 }
  28.                 $ok = $this->uploadCategories( $reader, $database );
  29.                 if (!$ok) {
  30.                         return FALSE;
  31.                 }
  32.                 $ok = $this->uploadProducts( $reader, $database );
  33.                 if (!$ok) {
  34.                         return FALSE;
  35.                 }
  36.                 $ok = $this->uploadOptions( $reader, $database );
  37.                 if (!$ok) {
  38.                         return FALSE;
  39.                 }
  40.                 $ok = $this->uploadAttributes( $reader, $database );
  41.                 if (!$ok) {
  42.                         return FALSE;
  43.                 }
  44.                 $ok = $this->uploadSpecials( $reader, $database );
  45.                 if (!$ok) {
  46.                         return FALSE;
  47.                 }
  48.                 $ok = $this->uploadDiscounts( $reader, $database );
  49.                 if (!$ok) {
  50.                         return FALSE;
  51.                 }
  52.                 //chdir( '../../..' );
  53.                 return $ok;
  54.         }
复制代码

作者: 流星    时间: 2012-5-18 12:20
﹎.Up 发表于 2012-3-22 14:21
这个问题主要是因为使用 windows 虚拟主机 的原因造成的,windows下禁用了 一些php函数 导致程序运行错误 ...

还是有以上问题
作者: 大吉大利    时间: 2012-5-29 15:41
有没有支持1.5.2.1 的批量上传的插件啊?
作者: a13589    时间: 2012-8-22 19:43
谢谢分享!!
作者: 沧海听涛    时间: 2012-10-30 21:54
很强大 谢谢分享
作者: 大^.^头    时间: 2012-11-2 10:49
为什么我通过这个插件上传上去的产品,在后台看不到呢,但是在前台页面是显示的。

我是这样操作的,先用插件把数据全部下载下来,然后进入product页,在最后复制添加了几行原有的产品,ID根据之前的产品ID然后依次递增,上传上去之后,在后台的Products里面看不到新添加的数据,但是前台能看到,这是何解?
作者: woshi86ai    时间: 2012-11-30 11:16
标题: 北京男子养生会馆156/52479797
<h3>156/52479797如果打不开请点击百度快照</h3> 支持楼主,不错<h3><span style="BACKGROUND-COLOR: #ffffff">本中心只提供正规按摩服务</span></h3>




欢迎光临 OpenCart - 中文论坛 (https://bbs.opencart.cn/) Powered by Discuz! X3.2