首页 CMS教程 &#&按 wordpress博客怎么优化

wordpress博客怎么优化

Nov 15, 2019 am 10:52 AM
wordpress

wordpress博客怎么优化

wordpress博客怎么优化?

我的优化步骤是:

1.压缩CSS和JS文件,并修改一部分插件,优化页面的载入进程

一般需要另外加载JS或者CSS的插件都会存在add_action(”wp_head”,”xxxx”)或者add_action(”wp_footer”,”xxxx”)这两句代码,目的是把自己的脚本或者样式插入到主题的wp_head()和wp_footer()处,使插件可以正常工作(那些反映说插件激活了但看不到效果的人注意了,我观察到相当一部分人所使用的主题不能正常加载插件的脚本,缺的就是这两个函数了)。

下面转回正题。我们需要优化载入进程,也就是流量整形,把CSS文件移到head里(这点100%的插件都能做到,不用担心),把JS文件放在页面最后。我们可以把add_action(xxxx)这句删掉,然后手工把所需的文件插入到主题模板里。

推荐:《WordPress教程

2.压缩CSS和JS,缩短文件的加载时间

经常用jQuery写脚本的人应该比较清楚,未压缩版的jQuery库(1.3.2)大小为120K左右,但min版的只有56K。因为jQuery库min版经过YUI Compressor压缩,去除了代码里的注释、无用的空格和换行符。我们也可以用YUI来压缩一下自己的脚本,压缩率能达到30%~70%。由于软件版的YUI安装过程比较复杂,这里有个在线版。

而CSS的压缩就比较简单,就是去除换行符、空格和注释,大家可以用在线工具压缩一下。但主题的style.css头部被注释掉的主题信息不能删掉,否则可能导致主题不正常。

对于CSS的压缩,很多人用的PHP压缩。编写名为style.css.php的文件,内容如下:

代码如下:

if ( extension_loaded('zlib') and !ini_get('zlib.output_compression') and ini_get('output_handler') != 'ob_gzhandler' and ((version_compare(phpversion(), '5.0', '>=') and ob_get_length() == false) or ob_get_length() === false) ) {
ob_start('ob_gzhandler');
}else{
ob_start();
}
//检查是否含有Gzip相关模块,有的话就采用Gzip传输,如果主机有Apache mod_deflate.c或其它等效模块的话,可以不写这段
@header("Cache-Control: public");
@header("Pragma: cache");
//缓存文件
$expiresOffset = 3600*24*365;
@header( "Vary: Accept-Encoding" );
@header( "Expires: " . gmdate( "D, d M Y H:i:s", time() + $expiresOffset ) . " GMT" );
//设置缓存时间
@header('Content-Type: text/css');//声明文件类型
$cssdata = file_get_contents('style.css');//读取style.css的内容
$cssdata = preg_replace(array('/\s*([,;:\{\}])\s*/', '/[\t\n\r]/', '/\/\*.+?\*\//'), array('\\1', '',''), $cssdata);//清除注释和换行符等
echo $cssdata;//输出代码
登录后复制

把这个文件放在主题文件夹里,并把主题CSS的加载代码改为

代码如下:

<link rel="stylesheet" href="<?php bloginfo(&#39;stylesheet_directory&#39;); ?>/style.css.php" type="text/css" media="all" />
</link>
登录后复制

当然JS文件也可以用PHP进行优化,但由于通常情况下加载的JS文件比较多,我通过另一个文件来间接加载JS。建立一个名为js.php的文件,内容如下:

代码如下:

if ( extension_loaded(&#39;zlib&#39;) and !ini_get(&#39;zlib.output_compression&#39;) and ini_get(&#39;output_handler&#39;) != &#39;ob_gzhandler&#39; and ((version_compare(phpversion(), &#39;5.0&#39;, &#39;>=&#39;) and ob_get_length() == false) or ob_get_length() === false) ) {
ob_start(&#39;ob_gzhandler&#39;);
}else{
ob_start();
}
//同样是Gzip压缩的语句
$js_folder = "js/";//JS文件所在目录,相对路径
$js_src = urldecode( htmlspecialchars( $_GET[&#39;src&#39;] ) );//获取JS文件名
$js_file = $js_folder.$js_src;//JS文件位置
@header("Cache-Control: public");
@header("Pragma: cache");
//缓存文件
$expiresOffset = 3600*24*365;
@header( "Vary: Accept-Encoding" ); // Handle proxies
@header( "Expires: " . gmdate( "D, d M Y H:i:s", time() + $expiresOffset ) . " GMT" );
//设置缓存时间
@header(&#39;Content-Type: text/javascript; charset: UTF-8&#39;);//声明文件类型
$jsdata = file_get_contents($js_file);
echo $jsdata;
//输出内容
登录后复制

把这个文件放在主题目录下,在主题文件夹里建立一个JS文件夹,把所需的JS文件都放到这个文件夹里。改写一下主题,用以下方式加载JS文件:

代码如下:

<script type="text/javascript" src="<?php bloginfo(&#39;stylesheet_directory&#39;); ?>/js.php?src=library.js"></script>
登录后复制

如果你的主机有Apache mod_deflate.c模块,基本上可以忽略上面的方法,因为只需要在.htaccess文件里加入以下代码就可以实现全站Gzip传输了。而且压缩率更高。

代码如下:

<ifmodule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/css text/plain text/xml application/x-httpd-php application/x-javascript
</ifmodule>
登录后复制

3.整合CSS和JS文件

经过上面一番折腾以后,其实页面载入速度已经快很多了,但速度是没有止境的,我们追求更快。搞无可搞以后,只能从减少HTTP请求数下手了,这一步的目的尽量整合所有的CSS和JS。

整合CSS比较简单,用各种主流浏览器测试几个页面,没发现框架错位现象,把相关的CSS里的代码粘贴到style.css里,并把相关的CSS-image也复制到主题目录下,修改一下CSS里的图片路径就行了。

JS的整合方法则复杂点,要搞清楚那些脚本需要在对象加载前加载,否则是无效的,并且要注意不同插件的JS冲突问题。

整合完CSS和JS后,重返第一步,把插件里加载脚本和样式的语句删掉。

以上是wordpress博客怎么优化的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

wordpress文章列表怎么调 wordpress文章列表怎么调 Apr 20, 2025 am 10:48 AM

有四种方法可以调整 WordPress 文章列表:使用主题选项、使用插件(如 Post Types Order、WP Post List、Boxy Stuff)、使用代码(在 functions.php 文件中添加设置)或直接修改 WordPress 数据库。

wordpress出现错误怎么办 wordpress出现错误怎么办 Apr 20, 2025 am 11:57 AM

WordPress 错误解决指南:500 内部服务器错误:禁用插件或检查服务器错误日志。404 未找到页面:检查 permalink 并确保页面链接正确。白屏死机:增加服务器 PHP 内存限制。数据库连接错误:检查数据库服务器状态和 WordPress 配置。其他技巧:启用调试模式、检查错误日志和寻求支持。预防错误:定期更新 WordPress、仅安装必要插件、定期备份网站和优化网站性能。

wordpress屏蔽ip的插件有哪些 wordpress屏蔽ip的插件有哪些 Apr 20, 2025 am 08:27 AM

WordPress 屏蔽 IP 的插件选择至关重要。可考虑以下类型:基于 .htaccess:高效,但操作复杂;数据库操作:灵活,但效率较低;基于防火墙:安全性能高,但配置复杂;自行编写:最高控制权,但需要更多技术水平。

wordpress评论怎么显示 wordpress评论怎么显示 Apr 20, 2025 pm 12:06 PM

WordPress 网站中启用评论功能:1. 登录管理面板,转到 "设置"-"讨论",勾选 "允许评论";2. 选择显示评论的位置;3. 自定义评论表单;4. 管理评论,批准、拒绝或删除;5. 使用 &lt;?php comments_template(); ?&gt; 标签显示评论;6. 启用嵌套评论;7. 调整评论外形;8. 使用插件和验证码防止垃圾评论;9. 鼓励用户使用 Gravatar 头像;10. 创建评论指

wordpress网站账号登录 wordpress网站账号登录 Apr 20, 2025 am 09:06 AM

登录 WordPress 网站账号的步骤:访问登录页面:输入网站网址加上 "/wp-login.php"。输入用户名和密码。点击“登录”。验证两步验证(可选)。成功登录后,您将看到网站仪表盘。

wordpress怎么写页头 wordpress怎么写页头 Apr 20, 2025 pm 12:09 PM

在WordPress中创建自定义页头的步骤如下:编辑主题文件“header.php”。添加您的网站名称和描述。创建导航菜单。添加搜索栏。保存更改并查看您的自定义页头。

WordPress网站已上线但是搜不到 WordPress网站已上线但是搜不到 Apr 20, 2025 am 09:00 AM

WordPress 网站无法在搜索引擎中被找到的原因:1. 索引问题;2. 内容问题;3. 网站技术问题;4. 链接问题;5. 其他问题,如地域限制、网站名称和社交媒体存在。

wordpress主题头部图片如何更换 wordpress主题头部图片如何更换 Apr 20, 2025 am 10:00 AM

更换 WordPress 主题头部图片的分步指南:登录 WordPress 仪表盘,导航至“外观”&gt;“主题”。选择要编辑的主题,然后单击“自定义”。打开“主题选项”面板并寻找“网站标头”或“头部图片”选项。单击“选择图像”按钮并上传新的头部图片。裁剪图像并单击“保存并裁剪”。单击“保存并发布”按钮以更新更改。

See all articles