zencart数据迁移到magento数据库操作-sql版本

一首先在zen-cart中建立数据库,代码如下:

drop table if exists export_magento;


create table export_magento (
   store               varchar(30)     not null
  ,websites            varchar(30)     not null
  ,attribute_set       varchar(30)     not null
  ,type                varchar(30)     not null
  ,sku                 varchar(50)     not null
  ,name                varchar(512)    not null
  ,product_name        varchar(512)    not null
  ,market_price        decimal(8,2)    null
  ,price               decimal(8,2)    not null
  ,special_price       decimal(8,2)    null
  ,weight              varchar(30)     not null default ''
  ,short_description   varchar(1000)   not null default ''
  ,description         text            not null
  ,meta_title          varchar(512)    not null default ''
  ,meta_keyword        varchar(512)    not null default ''
  ,meta_description    varchar(2000)   not null default ''
  ,image               varchar(255)    not null default ''
  ,small_image         varchar(255)    not null default ''
  ,thumbnail           varchar(255)    not null default ''
  ,gallery             varchar(512)    not null default ''
  ,status              varchar(10)     not null default 'Enabled'
  ,tax_class_id        varchar(10)     not null default 'None'
  ,qty                 int             not null default 0
  ,category_ids        varchar(50)     not null default ''
  ,is_in_stock         tinyint         not null default 1
  ,visibility          varchar(30)     not null default ''
  ,adddate             varchar(30)     not null default ''
);

其次直接根据zen-cart的数据库结构生成magento可以批量导入的表


truncate table export_magento;
insert into export_magento
select 'admin' as store
      ,'base' as websites
      ,'Common' as attribute_set
      ,'simple' as type
      ,p.products_model as sku
      ,pd.products_name as name
      ,pd.products_name as product_name
      ,'' as market_price
      ,p.products_price_retail as price
      ,p.products_price          -- ifnull(s.specials_new_products_price, p.products_price_sorter) as special_price
      ,p.products_weight  as weight
      ,'Brand new, never refurbished, 100% compatible' as short_description
      ,pd.products_description as description
      ,pd.products_name as meta_title
      ,'' as meta_keyword
      ,pd.products_name as meta_description
      ,substring_index(p.products_image, ',', 1) as image
      ,substring_index(p.products_image, ',', 1) as small_image
      ,substring_index(p.products_image, ',', 1) as thumbnail
      ,replace(p.products_image, ',', ';') as gallery
      ,'Enabled' as status
      ,'None' as tax_class_id
      ,p.products_quantity as qty
      ,p.master_categories_id as category_ids
      ,1 as is_in_stock
      ,'Catalog, Search' as visibility
      ,date_format(now(),'%Y/%d/%c') as adddate
  from products p
          inner join products_description pd
    on p.products_id = pd.products_id
 where pd.language_id = 1
   and p.master_categories_id in ();

用这种方法,就是不能支持多图及属性,这个得手工加了。

magento重量的计量单位问题

magento重量,在产品中,是公斤,还是克,与运输中的重量是如何匹配的呢?
其实Magento的重量不是按KG也不是按G,面是根绝你填写的数字计算而已…!
你可以把他认为是KG也可以认为是G…!
在运输费率表中,CSV中可以设置数字在多少之间的运费为多少..  比如CSV中写到1-2的运费是5, 就表示商品weight中1-2之间的产品价格都为5!
这样是比较实用,但刚开始很容易困扰!

magento中getChildHtml(”, true, true)语法的意思

在做magento一些版面调整时,发现了getChildHtml('', true, true)这个奇怪的语法,经查意思如下:
getChildHtml('', true, true)  调用的是当前块之下的定义。
如getChildHtml('', true, true)是在
/app/design/frontend/base/default/template/catalog/product/view/addtocart.phtml
中调用的
那addtocart.phtml本身的块是定义是

	<block type="catalog/product_view" name="product.info.addtocart" as="addtocart" template="catalog/product/view/addtocart.phtml" />

getChildHtml('', true, true)实际循环调用的是以下的块定义

- <reference name="product.info.addtocart">
- <block type="page/html_wrapper" name="product.info.addtocart.paypal.wrapper" translate="label">
  <label>PayPal Express Checkout Shortcut Wrapper</label> 
- <block type="paypal/express_shortcut" name="product.info.addtocart.paypal" template="paypal/express/shortcut.phtml">
- <action method="setIsInCatalogProduct">
  <value>1</value> 
  </action>
  </block>
  </block>
  </reference>

就这意思

Magento LightSpeed Module加速插件不支持widget功能

Magento LightSpeed Module加速插件,我试了一下,确实能加速,很快,
但是一次意外中在cms使用widget功能,居然不支持,前台直接显示widget的代码,晕死了,
我删除了这个插件,就正常了,所以肯定是这个插件的问题了。
向官方提交问题单去。

magento插件网站授权数的问题

我们在买magento插件时,一些销售商会按使用的网站数,进行销售,发一个网站授权100美元,两个180美元,经过我买了一些插件,发现这些东西中我们来说,没什么约束。大多数插件只进行简单的加密,有的甚至不加密。
很容易进行第二个网站的使用。哈哈!

magento在改版网站时如何迁移客户和订单数据

magento在改版网站时,需在另外一个模拟站,进行网站的改版和调试,当改好时,如何将自在运营中的magento的客户和订单数据迁移新站呢,以我把我订单和客户所涉及的数据库罗列如下,我试运了,没问题。
订单:
 mysqldump -u用户 -p密码  magento数据库 sales_bestsellers_aggregated_daily sales_bestsellers_aggregated_monthly sales_bestsellers_aggregated_yearly sales_billing_agreement sales_billing_agreement_order sales_flat_creditmemo sales_flat_creditmemo_comment sales_flat_creditmemo_grid sales_flat_creditmemo_item sales_flat_invoice sales_flat_invoice_comment sales_flat_invoice_grid sales_flat_invoice_item sales_flat_order sales_flat_order_address sales_flat_order_grid sales_flat_order_item sales_flat_order_payment sales_flat_order_status_history sales_flat_quote sales_flat_quote_address sales_flat_quote_address_item sales_flat_quote_item sales_flat_quote_item_option sales_flat_quote_payment sales_flat_quote_shipping_rate sales_flat_shipment sales_flat_shipment_comment sales_flat_shipment_grid sales_flat_shipment_item sales_flat_shipment_track sales_invoiced_aggregated sales_invoiced_aggregated_order sales_order_aggregated_created sales_order_status sales_order_status_label sales_order_status_state sales_order_tax sales_payment_transaction sales_recurring_profile sales_recurring_profile_order sales_refunded_aggregated sales_refunded_aggregated_order sales_shipping_aggregated sales_shipping_aggregated_order salesrule salesrule_coupon salesrule_coupon_usage salesrule_customer salesrule_label salesrule_product_attribute wishlist eav_entity_store>order.sql

eav_entity_store 是记录了订单的一些最后一个Id号资料,这个不拷,会在支付最后一步出错的!

客户
 mysqldump -u用户 -p密码  magento数据库 customer_address_entity customer_address_entity_datetime customer_address_entity_decimal customer_address_entity_int customer_address_entity_text customer_address_entity_varchar customer_eav_attribute customer_eav_attribute_website customer_entity customer_entity_datetime customer_entity_decimal customer_entity_int customer_entity_text customer_entity_varchar customer_form_attribute customer_group log_customer>custom.sql

将上述运营站导出的表,导入到新版的站中,即可实现客户和订单的迁移.

magento一些插件会影响网页的“等待响应”时间

magento一些插件,因设计上的原因,需对数据进行查询,因性能原因,会影响网页的“等待响应”时间
这些插件,会让打开一个网页时,一直等待,会影响4-8秒的速度,我自己碰到的会影响的插件说明一下:
推荐目录SFC_FeaturedCategories
自定义菜单webandpeople-magento-1.4-custom-menu-1.2.5(这个因对catalog/navigation进行的转向,本身是不会影响,当其它一些也用到这个转向时就会很慢,解决办法是不转向,让这个custom-menu用他自己的catalog/navigation对应的block.
所以大家在做magento后,编译和打开缓冲后,如果用firefox看还慢的话,就要一个一个调试,看哪些插件影响速度。
这个问题困扰我挺长时间的。