修改13个WordPress主题函数优化载入速度

2012年10 月2日 / 网站源码 / 没有评论 / 2,929次

免费的WordPress主题制作起来非常容易,使用一个WordPress主题也非常简单,下载主题,上传到相应的目录,后台激活即可。

当WordPress访问速度慢的时候,也许第一反应是觉得WordPress主机有问题,也可能觉得是安装的插件有点多,但是,Wopus需要说明的是,WordPress主题由于制作质量的差异,也会影响到WordPress的访问速度。

WordPress主题函数很多,每个函数也都有自己的作用,但是在一些时候,我们可以不使用函数,而直接使用具体的链接地址,这样就避免了函数对数据库的操作,从而提高了WordPress主题整体的载入速度。

以下是13个有可能存在WordPress免费主题中的可以使用静态代码替代的或是可以删除的WordPress主题函数。

  • <?php language_attributes(); ?>该函数位于header.php文件,这个函数是用于生成当前博客所使用的语言的,比如“lang='zh-CN'”,用来告诉浏览器当前页面是基于中文的,意义不大,所以为了速度删除它吧;
  • <?php bloginfo(’html_type’); ?> 该函数位于header.php文件,可使用text/html替换;
  • <?php bloginfo(’charset’); ?> 该函数位于header.php文件,是用来指定页面编码的,因为WordPress正常情况下使用的是UTF-8编码,所以这里可以使用UTF-8替换;
  • <?php bloginfo(’name’); ?> 该函数是用来生成博客标题的,可以说可能遍布全主题,所以如果你明确你博客的标题而且不经常修改或是修改不怕麻烦的话,可使用固定的名称来替换这个函数;
  • <?php bloginfo(’description’); ?> 如果上一个博客标题的函数一样,这个是用来生成显示博客副标题的,也可以使用静态的文字来替换,当然如果不需要的话也可以删除;
  • <meta name=”generator” content=”WordPress <?php bloginfo(’version’); ?>” /> <!– leave this for stats –> 该函数位于header.php文件(很多主题也没有这个函数), 记得去年,WordPress有一版除了漏洞,很多WordPress博客被黑了,原因就是很多人在自己的博客上暴露了当前使用的WordPress版本。详细可以查看这里
  • <?php bloginfo(’stylesheet_url’); ?> 该函数位于header.php文件,是用来描写主题样式表位置的,如果你知道主题样式的绝对地址的话,也可以使用绝对地址来替换,如果不知道绝对地址的话,请不要改动这里;
  • <?php bloginfo(’rss2_url’); ?> 该函数位于一般会出现在header.php、sidebar.php、footer.php三个文件里,是WordPress自带的RSS解释地址函数。出现在header.php文件是用来给像Firefox这类的能在地址栏里检测是否有RSS输出显示图标的,但是现在的阅读器一般支持直接输入博客地址自动获取RSS地址,以及很多博客都会通过第三方烧录RSS地址,所以这个函数也是可以删除的。但如果是你指定这个函数到订阅图标的,那就另当别论了;
  • <?php bloginfo(’pingback_url’); ?> 该函数位于header.php文件,是用来生成pingback地址的,可以删除;
  • <?php bloginfo(’stylesheet_directory’); ?> 该函数是用来生成样式文件所在的文件夹目录地址,一般出现在样式中,比如引用背景图片时的地址,这个函数也可以使用绝对地址来替换,当然前提是你知道绝对地址;
  • <?php bloginfo(’comments_rss2_url’); ?> 该函数位一般出现在sidebar.php、footer.php两个文件里,是解释生成评论RSS地址的,如果不提供评论的RSS订阅,那就可以删除这个函数;
  • queries. seconds. –>该函数位于footer.php文件,用来显示页面载入速度,当然显示这个不会让你有多少快感,可以删除;
  • 如果你在主题中使用了Widgets,并且你准备一直都使用Widgets而不使用主题自带的侧边栏内容的话,你可以在sidebar.php中寻找位于 if ( !function_exists(’dynamic_sidebar’) || !dynamic_sidebar() ) : ?><?php endif; ?> 之间的代码,这些代码明显没什么价值了,可删除。

当然,在修改替代之前,备份还是需要的。