作者归档:MiMi

Zend Studio 9.0.1 使用感受及破解注册方法

Zend Studio 9 发布已经有一段时间了,今天抽空研究一下。

先看官网的介绍:http://www.zend.com/en/products/studio/studio-whats-new

新特性包括:
1. Git and GitHub support (Git和GitHub的支持)
2. Deep cloud integration (深度云集成)
3. Creation of deployment packages (部署包的创建)
4. Much faster startup and running, much smaller footprint (更快的启动和运行速度,更少的资源占用)

注意亮点在第四条,官网上说,启动速度提高了67%,磁盘暂用率降低了40%。
当我看到这里,瞬间我就流泪了。对于现在正用的ZS8(优化后),
每次启动2分钟,内存占用500M,如果再开一个firebug,伤不起啊伤不起。
ZS9的出现,就像黑夜中的烛光,黎明中的曙光,乌云散尽的太阳,光芒万丈哇。

20120111 update
geekso.com上面找到了最新的破解方法:
1. 下载ZendStudio9.0.1破解文件:com.zend.php.core_9.0.1.201112141951.jar
2. 复制到plugins目录下覆盖同名文件。
3. 启动ZS9,输入License Key:
34E606CF10C3E4CF202ABCEAA9B0B7A64DD2C5862A514B944AAAB38E3EB8A5F2CD735A2AB4CF9B952590EFA62BA0AB2B3E5D99C33C55309EE143165AC7F1817D626574615F3B32312F31312F323031313B392E303B3030313B313B3330
4. 查看菜单 Help -> About Zend Studio 过期时间变为9999年说明破解成功。

配置 WordPress 网络(多站点)功能 及 域名映射

自从Wordpress 3.0开始,新增了很多令人惊喜的特性,比如自定义POST类型,分类升级,自定义菜单,增加网络功能等,其中的网络功能即是传说中的多站点了,它整合了Wordpress MU的核心代码,让我们可以只用一套程序实现像WP MU一样的站群系统。

一、安装:
正常安装Wordpress,如果已经安装过,请先备份网站,然后停用所有插件。

二、激活多站点模式:
编辑文件 wp-config.php
在/* That’s all, stop editing! Happy blogging. */这一行之前加入以下代码:
/* allow multisite */
define(‘WP_ALLOW_MULTISITE’, true);

三、后台配置:
登录WP后台,进入Tools——>Network Setup选择网站地址形式,有子域名和子目录两种,
点击Install按钮后,会提示你继续修改 wp-config.php 文件,
按照提示,首先创建在 wp-content目录中创建 blogs.dir 文件夹,
然后根据说明修改 wp-config.php 和 .htaccess 文件,
最后重新登录系统,登陆地址是:
worpress_url/wp-admin/network/
到这一步,Wordpress网络功能就部署完毕了,
我们可以成功在后台新增二级域名或子目录的站点。

四、新增站点绑定顶级域名:
如果想让子站点绑定独立的顶级域名或其他域名,
需要安装域名映射插件: WordPress MU Domain Mapping
官方下载地址:
http://wordpress.org/extend/plugins/wordpress-mu-domain-mapping/
安装成功后,首先全网络激活插件Network Activate,
然后把插件目录下的 sunrise.php 文件移动到 wp-content/ 目录下,
再次编辑 wp-config.php 文件,增加代码:
define( ‘SUNRISE’, ‘on’ );
刷新一下管理后台,在Settings中新增了2个项目,
在Settings——>Domain Mapping中设置服务器IP和CNAME,
在Settings——>Domains中可以添加新的域名,
Site ID就是需要绑定域名站点在数据库中的ID值,在All Sites中可以看到。
同样的,你也可以进入子站点的控制面板中,
在Tools——>Domain Mapping里面设置需要绑定的域名。

注意事项:
1. 服务器空间需要支持.htaccess 。
2. 开启 WordPress Network 功能后,最好不要把WP放在子目录。
3. 在本机测试时,不要使用127.0.0.1,用localhost代替。

— over —

php+css让缩略图显示图片的中心部分

如果原始图片为长方形,让图片缩略图只截取图片中心的正方形部分显示。

分为两部分操作,以缩略图为200px的正方形为例,因缩略图访问次数较多,为节省流量,用php生成一个图片长宽最小不小于200px的保持原图片长宽比的小图:

$thumb_width = $thumb_height = 200;

// Get new dimensions
list($width, $height) = getimagesize($filename);

// If height is longer than width, height increase, width unchanged.
if ($width < $height)
{
$thumb_height = ($thumb_width / $width) * $height;
}
else
{
$thumb_width = ($thumb_height / $height) * $width;
}

// Resample
$image_p = imagecreatetruecolor($new_width, $new_height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $thumb_width, $thumb_height, $width, $height);

// Output
imagejpeg($image_p, null, 100);

第二步,用CSS显示缩小后图片的中间部分:

) no-repeat 50% 50%; max-height:200px; max-width:200px;”>

如果有更好的方法,欢迎回复。

定制OpenCart首页和分类页展示的产品

OpenCart早已把常用的功能写好提供给我们了,直接拿来使用即可。

比如我们想修改首页产品图片为显示8个最畅销产品,只需要调用:
$this->model_catalog_product->getBestSellerProducts(8)

如果想显示最新的6个产品,可以这样使用:
$this->model_catalog_product->getLatestProducts(6)

显示指定的商品:
$this->model_catalog_product->getProducts()

最受欢迎的商品:
$this->model_catalog_product->getPopularProducts()

特价商品:
$this->model_catalog_product->getProductSpecials()

以上方法都返回一个数组,自己根据情况编写视图模板文件即可。

OpenCart 模板创建 module 简单步骤

假如我想创建一个侧边栏模块sidebar,让每一个页面都可以复用,步骤如下:
1. 在controller/module目录下新建sidebar.php文件。
2. 添加文件内容为:
class ControllerModuleSidebar extends Controller {
	protected function index($setting) {
		$this->template = $this->config->get('config_template') . '/template/module/sidebar.tpl';
		$this->render();
	}
}
3. 在template/module创建sidebar.tpl模板文件。
4. 在调用的controller引用:
$this->data['sidebar'] = $this->getChild('module/sidebar');
5. 在模板文件使用: echo $sidebar;
最后我想说 OpenCart 真是一款优秀的开源电子商务软件,以后我会写更多关于 OpenCart 的内容。

让 swfobject.js v2.2 在IE、Firefox、Chrome下都支持透明效果的方法

以前在这篇文章中(http://mimiz.cn/index.php/open-source/swfobject-js-transparent-flash/)介绍了让swfobject.js支持flash透明效果的方法,但这个方法比较山寨,需要修改swfobject.js源文件。下面给出更加优秀的方法,代码如下:

var flash_att = { data:"flash/logo.swf",
width:"88", height:"90", wmode:"transparent",
style:'position: absolute;left:0px;top:0px;'};
var flash_par = {wmode:"transparent"};
swfobject.createSWF(flash_att, flash_par, "flashlogo");


如果你不知道什么是swfobject.js,请进入传送门:
http://mimiz.cn/index.php/open-source/swfobject-js-transparent-flash/

用 ImageMagick 把 PDF 转换成 PNG

ImageMagick 是一个开源免费的图片处理软件,功能极其强大,更重要的是,它对主流的开发语言支持良好,有大量现成的接口可用。

我在项目中需要实现把PDF文件转换成图片以及截取网页预览图的功能,用 ImageMagick 实现简直轻而易举。

安装起来很简单,先去官方网站下载程序包:http://www.imagemagick.org/script/index.php
一般来说Linux系统自带了 ImageMagick,Windows系统可以下载 ImageMagick-6.6.7-7-Q16-windows-dll.exe ,安装过程中注意把目录添加到系统PATH。

把 PDF 转换成 PNG,只需要一行命令:
convert file.pdf image.png
但我猜它一定会出现错误:
Magick: `%s' (%d) "gswin32c.exe" -q -dQUIET -dPARANOIDSAFER -dBATCH -dNOPAUSE -d
NOPROMPT -dMaxBitmap=500000000 -dEPSCrop -dAlignToPixels=0 -dGridFitTT=2 "-sDEVI
CE=pngalpha" -dTextAlphaBits=4 -dGraphicsAlphaBits=4 "-r72x72" "-sOutputFile=C:
/Temp/magick-VApKMHci--0000001" "-fC:/Temp/magick-4m681YaN" "-fC:/Temp/ma
gick-RakStRfR" @ error/utility.c/SystemCommand/2092.
Magick: Postscript delegate failed `file.pdf': No such file or directory @ error
/pdf.c/ReadPDFImage/663.
Magick: missing an image filename `image.png' @ error/convert.c/ConvertImageComma
nd/2959.

google一下,原来想要转换PDF,在PATH中需要有gswin32c.exe才行。
再google一下gswin32c.exe是什么东西,是Ghostscript。
官方地址是:http://ghostscript.com/ 安装之后就可以让 ImageMagick 支持 PDF文件了。

后续我会介绍一些 ImageMagick 更加强大的功能和使用技巧,哈哈。