WordPress网站性能优化指南

1.选择一个好的主机

尽量不要使用免费主机或者共享主机(Godaddy啊、Bluehost啊等等所谓无限带宽、无限网站之类的主机)
首先,你的域名和你的主机最好在一个IDC哪儿,如果不是的话,建议你采用口碑良好的DNS服务商,让域名以最快的速度解析到主机上,这不是重点,重点是你的服务器/主机空间应该够快,怎么才能够快呢?CPU的配置、CPU的使用率、物理内存的大小、磁盘类型以及磁盘的I/O性能(包括Mysql数据库服务器所用磁盘)、Mysql响应速度以及Mysql并发数等等,都会影响到网站的快与不快,并且是物理性的影响。

2.选择一个更快的主题

什么样的主题才能更快呢?直观来看,包含尽量少的php、js、css和字体(字体或图标字体)文件的主题性能会好些。从代码来看,编码合理并在正确的页面载入正确的文件的主题会好些。

3.选择一个缓存插件

推荐使用 W3 Total Cache 或者 WP Super Cache ,都是免费的,但是都很好使,我个人更喜欢W3 Total Cache,因为它支持:页面缓存、HTML压缩、对象缓存、数据库缓存、客户端浏览器缓存、以及CDN。

4.使用个CDN

国外的话,CloudFlare不错;国内的话,加速乐不错。

5.启用Gzip

如果服务器支持,就启用Gzip,上述缓存插件W3 Total Cache就支持你启用这个。

6. 使用编码良好的插件

WordPress有着数不清的插件,但并非所有插件的代码都是编码良好的,这就需要你确定下哪些插件是适合你的了。最直观的办法是:当你从Wordpress插件目录安装一个3星以下的插件的时候,你应该仔细了解下它的代码情况了!怎么了解呢?

7. 要注意及时更新你的主题和插件

及时的更新自己所用的WordPress主题和插件,不仅能提高自己的Wordpress网站的安全性,而且有些更新是针对性能的,这样就会在性能上有所提升的。

8.优化数据库

你可以使用 WP-Optimize 或者 WP-DBManager 之类的插件来优化自己的数据库,这些插件能够删除那些未经审核的垃圾评论,那些回收站中的文章,那些自动保存的草稿或者文章的回滚版本等。当然了,最好的方式是你能自己访问你的数据库并执行SQL语句来进行这些操作,如果你觉得自己对SQL和Wordpress都够熟悉的话。

9. 优化上传的图片

对于任何一个网站来说,图片都是页面上比较重要的元素了,但是你的图的大小要与你使用这张图的最大的容器的尺寸相匹配,而不是原生态的P一张图或者一张照片就直接上传了。举个例子来说:你要上传一张图,这张图所在的最大容器宽度是948px,这张图本身的宽度是1600px,你应该处理下这张图,让它的最大宽度是948px就行,这样能显著提高该图所在网页的载入速度,缩短载入时间并节约服务器资源和带宽。

另外一种情况是:你上传的图的最大宽度和你所用改图的最大容器的宽度一致,这种情形下,建议你用Smush.it 以及基于它的Wordpress插件来处理一下上传的图片,当然了,你也可以使用类似于 无损图片压缩大师 之类的桌面软件(图片压缩软件推荐)或jpegmini 之类的在线网站来压缩你的图片。

本页内容版权归属为原作者,如有侵犯您的权益,请通知我们删除。
yii2.0框架是PHP开发的一个比较高效率的框架,集合了作者的大量心血,下面通过用户为例给大家详解yii2使用中的一些基本的增删改查操作。 User::find()-all(); //返回所有用户数据; User::findOne($id); //返回 主键 id=1 的一条数据; User::find()-where(['name' = 'ttt'])-one(); //返回 ['name' = 'ttt'] 的一条数据; User::find()-where(['name' = 'ttt'])-al
本文分享了php结合ajax实现无刷新上传图片的实例代码,分享给大家,希望大家可以和小编一起学习学习,共同进步。 1.引入文件 !--图片上传begin--script type="text/javascript" src="/js/jquery.form.js"/scriptscript type="text/javascript" src="/js/uploadImg.js"/scriptlink href=#> 2.html部分 div class="upimg" input name="icon"

教大家制作简单的php日历 - 2015-11-19 15:11:54

最近的一个项目中,需要将数据用日历方式显示,网上有很多的JS插件,后面为了自己能有更大的控制权,决定自己制作一个日历显示。如下图所示: 一、计算数据 1、new一个Calendar类 2、初始化两个下拉框中的数据,年份与月份 3、初始化要搜索的年份和月份 4、计算得出日历中每一天的数据信息,包括css、天数 ?php require_once 'calendar.php'; $util = new Calendar(); $years = array(2012, 2013, 2014, 2015, 201
Yii是一个基于组件的高性能PHP框架,用于开发大型Web应用。Yii采用严格的OOP编写,并有着完善的库引用以及全面的教程。 废话不多说了,直接给大家贴代码了。 ?phpclass ContactForm extends CFormModel{ public $_id; public $contact;//联系人 public $tel;//电话 public $fax;//传真 public $zipcode;//邮编 public $addr;//地址 public $mobile;//手机 pub

使用PHP uniqid函数生成唯一ID - 2015-11-19 14:11:40

生成唯一ID的应用场景非常普遍,如临时缓存文件名称,临时变量,临时安全码等,uniqid()函数基于以微秒计的当前时间,生成一个唯一的 ID。由于生成唯一ID与微秒时间关联,因此ID的唯一性非常可靠。 生成的唯一ID默认返回的字符串有 13 个字符串长,如果不定义唯一ID的前缀,最多可返回23个字符串长,如果再结合md5()函数,生成的唯一ID可靠性将更高,这种生成的ID比随机性的ID 最大优点在于可实现排序,特别是一些需要存储在数据库中的值。 一,函数原型 string uniqid ( [string
YII的models中的rules部分是一些表单的验证规则,对于表单验证十分有用,在相应的视图(views)里面添加了表单,在表单被提交之前程序都会自动先来这里面的规则里验证,只有通过对其有效的限制规则后才能被提交,可以很有效地保证表单安全和信息的有效性。还是给大家具体说明一下: 以下是视图(views)部分的简单代码: ?php $form=$this-beginWidget('CActiveForm', array( 'id'='tag-form', 'enableAjaxValidation'=fa
关于生成唯一数字ID的问题,是不是需要使用rand生成一个随机数,然后去数据库查询是否有这个数呢?感觉这样的话有点费时间,有没有其他方法呢? 当然不是,其实有两种方法可以解决。 1. 如果你只用php而不用数据库的话,那时间戳+随机数是最好的方法,且不重复; 2. 如果需要使用数据库,即你还需要给这个id关联一些其他的数据。那就给MySQL数据库中的表的id一个AUTO_INCREMENT(自增)属性,每次插入一条数据时,id自动+1,然后使用mysql_insert_id()或LAST_INSERT_I

PHP的运行机制与原理(底层) - 2015-11-19 14:11:35

说到php的运行机制还要先给大家介绍php的模块,PHP总共有三个模块:内核、Zend引擎、以及扩展层;PHP内核用来处理请求、文件流、错误处理等相关操作;Zend引擎(ZE)用以将源文件转换成机器语言,然后在虚拟机上运行它;扩展层是一组函数、类库和流,PHP使用它们来执行一些特定的操作。比如,我们需要mysql扩展来连接MySQL数据库;当ZE执行程序时可能会需要连接若干扩展,这时ZE将控制权交给扩展,等处理完特定任务后再返还; 最后,ZE将程序运行结果返回给PHP内核,它再将结果传送给SAPI层,最终
一、下载Eclipse的PHP插件 百度搜索phpeclipse,看到某条结果是带有SourceForge.net字样的,点进去,找到Download按钮,点击之后,等待5秒就会开始下载了。 二、安装Eclipse的PHP插件 插件下载完成之后,解压,然后把site.xml删掉(大部分插件不用删这个文件,但是PHPEclipse必须删),最后把整个文件夹复制到Eclipse的dropins文件夹里面,重启Eclipse即可。 三、在Eclipse新建PHP工程和新建PHP文件 在插件安装成功的前提下,新建
在搜索引擎中搜索关键字.htaccess 缓存,你可以搜索到很多关于设置网站文件缓存的教程,通过设置可以将css、js等不太经常更新的文件缓存在浏览器端,这样访客每次访问你的网站的时候,浏览器就可以从浏览器的缓存中获取css、js等,而不必从你的服务器读取,这样在一定程度上加快了网站的打开速度,又可以节约一下你的服务器流量。 具体文字说明不给大家多说了,下面通过代码实例给大家讲解。 比如 link rel="stylesheet" type="text/css" href=#> 中的href和src加上版