April 2016

升级 scaleWay 的 nginx 到最新版 1.9.14

默认带的是 nginx 1.4.6

首先是升级

cd ~
wget http://nginx.org/keys/nginx_signing.key
apt-key add nginx_signing.key

vim /etc/apt/sources.list
添加下面2行:
deb http://nginx.org/packages/mainline/ubuntu/ trusty nginx
deb-src http://nginx.org/packages/mainline/ubuntu/ trusty nginx

然后卸载掉旧版的 nginx
apt-get remove nginx nginx-common

scaleWay LEMP 配置PHP7.0 的一些插件

scaleWay 提供的 LEMP 是基于 Ubuntu14.04的.
1.升级到PHP7.0

apt-get install php7.0
apt-get install php7.0-mysql
apt-get install php7.0-fpm

2. 安装一些插件

apt-get install php7.0-mcrypt php7.0-mbstring php7.0-bcmath php7.0-bz2 php7.0-curl php7.0-enchant php7.0-gd php7.0-gmp php7.0-imap php7.0-intl php7.0-snmp php7.0-soap php7.0-tidy php7.0-xmlrpc php7.0-zip

feeds 批量导入需要注意的地方

1. 注意内存占用.

Feeds 导入会占用较多资源,建议 top 查看内存占用.

如果导入失败, 尝试降低 php-fpm 的进程数.

2. 注意价格

价格在导入的时候,为真实价格的100倍, 例如 1,399.00 要写为 139900

不过我们可以通过tamper来做一下数学运算 乘以 100

在excel中 price 字段中的数字建议设置为常规. 如果设置为货币,大于或等于1000的将包含千分位分隔符. 设置成数值,小数点后有2位,则无法识别为数字.

3. internet 导入图片,可能导致图片多次存储

Commerce feeds 无法 mapper 产品 Dimension 和 Weight 的问题

cd /path/to/sites/all/modules/commerce_feeds

wget https://www.drupal.org/files/commerce_feeds_physical_weight_and_dimensions_with_defaults_1293820-40.patch 

patch -p1 < commerce_feeds_physical_weight_and_dimensions_with_defaults_1293820-40.patch

然后在feeds 的mapper页面,就能找到Dimension 和weight了

多个 SKU 如何放到一个 product 中显示? feeds 实现

这个问题类似于前面的一个 product variant 含有多个图片的问题.

也就是我们要通过在 SKU 字段,添加多个 产品 SKU, 并作 tamper explode 处理的方式来实现.

例如 csv 内容:

GUID,Description,SKU,Title
1233,Product descriptions,101EST;111EST,Test Product

导入后,便会得到一个 product node 下有2个 SKU.

如果每个SKU 没有用于区分的颜色或者其他属性, 将会直接显示 SKU 供用户选择.

如果有颜色/尺寸等供选择的话, 则不会 直接显示 SKU列表供选择.

commerce_kickstart 中 Cloud-zoom 1.0.3库的一个bug

http://go.thatk.com/sites/default/files/js/blank.png Failed to load resource: the server responded with a status of 404 (Not Found)

经查找关键词 “blank.png” 找到

在未压缩的 js 中可以查到 scriptPath

很多 js_XXXXX.js 都是在 sites/default/files/js 目录中

media_feeds 导入sites/default/files 目录中图片的折中解决办法

在一个 Images 字段包含较多的图片,并使用;分割时.会遇到 Failed to get the file object for FILENAME 的问题.

这个问题导致无法导入手动上传的图片.

那么 Images (by filename from library ) (field_images:MediaFeedsLibraryProvider), 这里的 library 指的是什么呢?

指的是数据库中表 file_managed, 之前已经通过web页面上传的产品图片,会在这里有记录,所以直接使用是成功的.

feeds 和 feeds_tamper, tamper 配合,导入产品图片,并做预处理的配置

drush dl feeds commerce_feeds feeds_tamper tamper media media_feeds

drush en –y feeds commerce_feeds feeds_import feeds_ui media media_feeds tamper tamper_ui feeds_tamper feeds_tamper_ui

注意feeds_tamper的一处bug. >> 点击查看

http://go.thatk.com/?q=admin/structure/feeds 可以看到 importer 列表. 如果启用 commerce_feeds_example 会自动添加2个 importer

发现 feeds_tamper-7.x-1.1 插件中一处 bug

feeds_tamper/plugins/default_value.inc

第30行, 参数中有2个 $source. 第一个红色高亮的应为 $result

drupal 多语言 快速导入翻译

drush en locale

http://thatk.com/admin/config/regional/language 添加语言

drush dl admin_language && drush en -y admin_language

drush dl l10n_update && drush en -y l10n_update

drush cache-clear all

drush l10n-update-refresh

drush l10n-update

自动更新导入语言

Drupal7 设置 SMTP 发信, (避免 Mail 服务器发信被 gmail拒收 )

安装 smtp 插件;

drush dl smtp && drush en –y smtp;

cd sites/all/libraries/

wget https://github.com/PHPMailer/PHPMailer/archive/phpmailer-2.0.zip

unzip phpmailer-2.0.zip

mv PHPMailer-phpmailer-2.0/ phpmailer

 

http://domain.name/admin/config/system/smtp 配置smtp 邮箱信息