在WordPress中实现评论头像的自定义默认和延迟加载

   2015-11-26 0
核心提示:这篇文章主要介绍了在WordPress中实现评论头像的自定义默认和延迟加载,需要的朋友可以参考下

自定义 WordPress 默认评论头像
对于没有设置Gravatra头像的评论者来说,WordPress会显示一个你在后台设置的默认头像,可以是神秘人、空白、默认的Gravatar 标志等等。但是这些头像有一个共同的不足之处,就是不怎么美观,可看性不强!打个比方,如果你去一个博客阅读文章,但当你放心评论文章的读者头像都是小怪物、复古等一系列WordPress自动生成的“不堪入目”的头像时,你还有很浓的兴趣去阅读这个博客的文章吗?我想答案是肯定的!那么,你有没有想过,自己设计或找一个属于你博客、适合你博客的默认WordPress头像那?好了,周良就不吊大家的胃口了,让我来说一下如何不使用插件实现自定义WordPress默认评论头像的方法。

方法很简单,将下面我提供的这段代码放在你正在使用的主题functions.php文件中。

<php
// Make a new default gravatar available on the dashboard
function newgravatar ($avatar_defaults) {
$myavatar = get_bloginfo('template_directory') . '/images/tweaker.jpg';
$avatar_defaults[$myavatar] = "Tweaker";
return $avatar_defaults;
}
add_filter( 'avatar_defaults', 'newgravatar' );
>


上面代码中的/images/tweaker.jpg就是自定义默认头像的相对路径,你可以自行修改图片的地址。建议将头像放到你正在使用的主题images文件下面。

延迟加载 WordPress 评论头像
修改 HTML 结构

因为前面说到在新式浏览器中的问题, 我们不能再用一般书写 HTML 图片的方式, 而是要将占位符写到 src 属性, 而将真正的图片地址写在 data-original 属性上. 所以 WordPress 头像代码结构应该是下面这样的.

<img class="avatar" src="占位符图片.gif" data-original="头像图片.jpg" />

在 WordPress 中, 本来输出头像如下.

<php echo get_avatar($comment); >

现在需要改为适合 Lazy Load 插件的结构如下.

<php echo '<img class="avatar" src="占位符图片.gif" alt="" data-original="' . preg_replace(array('/^.+(src=)(\"|\')/i', '/(\"|\')\sclass=(\"|\').+$/i'), array('', ''), get_avatar($comment)) . '" />'; >

这里建议使用 loading 图片或者默认头像作为占位符图片.

添加 Lazy Load 支持

打开 footer.php, 在 </body> 前添加 Lazy Load 插件和调用即可.

<script src="jquery.lazyload.js"></script>
<script>
/* <![CDATA[ */
$("img.avatar").lazyload();
/* ]]> */
</script>

当然, 在这之前你还需确保你的网站已经载入 jQuery. 完整的说明可以参考我翻译的关于 Lazy Load 的文章.

使用 Lazy Load 的优缺点

为什么用要 Lazy Load 可能使用之前你就知道, 可以延迟加载图片, 提升页面加载速度. 但其实紧紧是速度问题, 其对网站的 SEO 也很重要. 比如: 现在有某文章页面, 后面有 N 多人回复, 但这些回复者的头像与文章内容往往没有关系, 我们不希望搜索引擎收录这么多无关的图片.

换个角度, 如果我们做的是电子商务网站, 希望产品的 description 中有丰富的图文信息, 并且被搜索引擎爬取. 但这些图片往往尺寸大影响加载速度, 淘宝为了页面性能也已经全部延迟加载, 而那些对 SEO 依赖性强的平台来说这种做法未必是好事.

选择是否延迟加载图片, 要衡量内容的重要性和页面的性能, 在其中取得平衡很重要.

 

 
标签: WordPress 头像 PHP
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • 一个可以放wordpress博客的PHP国外免费空间速度
    www.000webhost.com/www.000webhost.com/ 提供了250M的免费空间 每月100G的流量,并且MYsql数据库支持5用户。虽然不不能让你永久免费使用下去,但至少到2012年都是免费的。详情网站上有说明。我的测试博客地址:http://codyan.000webhost.com
    02-09
  • 定制WooCommerce的账户详情(用户资料)页,增加自定义字段,修改默认字段
    定制WooCommerce的账户详情(用户资料)页,增加
    WooCommerce是一款非常流行的WordPress电商插件。然而也听到很多人反映,它并太符合中国用户的使用习惯。国内用户的电商网站使用习惯大多是被淘宝培养出来的,因此如果要基于WordPress + WooCommerce搭建一个面向国人的小型电商网站,为提高用户体验,还是要
    01-06 PHPWordPress
  • WordPress.com 已切换到 PHP7,性能显著提升
    WordPress.com 已切换到 PHP7,性能显著提升
    据了解,目前 WordPress.com 已经全部切换到 PHP 7,性能显著提升。 如下所示,CPU、latency(延迟)有了大幅度的提升与改进。WordPress是一种使用 PHP 语言开发的博客平台,用户可以在支持PHP和MySQL 数据库的服务器上架设自己的网志。也可以把 WordPress 当
  • 负载均衡一个PHP应用
    负载均衡一个PHP应用
    1、mariadb、nfs服务器的设置 (centos 7)[root@localhost ~]# rpm -q rpcbindrpcbind-0.2.0-32.el7.x86_64[root@localhost ~]# rpm -q nfs-utils (默认nfs已经安装的)nfs-utils-1.3.0-0.21.el7.x86_64[root@localhost ~]# yum -y install mariadb-server [r
    10-31 PHPWordPress
  • 增加文章列表缩略图
    增加文章列表缩略图
    前几天脑抽又折腾了一阵子博客的样式,本来想着简简单单修改下就算完事,没成想这一折腾就刹不住车了,改了文章列表改边栏,改了边栏改 head 和 footer,折腾的一六八开,等我陆陆续续都改完后再整体一看…彻底傻眼,这是什么鬼,果真没那金刚钻就别揽这瓷器
    10-01 WordPressCSS
  • WordPress升级PHP7后白屏
    把bmclapi安顿到其他服务器上后,这台服务器终于有内存跑第二个fpm了,所以决定安装一下php7,让dz跑在5.5的fpm上,单独给wp上7安装完成后发现首页白屏,但是error_log里没有输出,即使打开WP_DEBUG,也只有几个Notice和Deprecated,按理来说不应该会导致白屏
  • WordPress分页伪静态加html后缀
    本文给大家分享的是在使用WordPress的过程中,发现其内容页分页的形式非常的不友好,于是就动手进行修改的过程以及详细代码,非常的实用,推荐给大家。
  • CentOS下搭建PHP环境与WordPress博客程序的全流
    这篇文章主要介绍了CentOS下搭建PHP环境与WordPress博客程序的全流程总结,这里我们以Apache服务器程序和MySQL数据库程序为例进行讲解,需要的朋友可以参考下
  • 是 WordPress 让 PHP 更流行了 而不是框架
    最流行的是 WordPress,比其他应用都流行很多,垫底的是 Zend Framework
  • WordPress主题制作中自定义头部的相关PHP函数解
    这篇文章主要介绍了WordPress主题制作中自定义头部的相关PHP函数解析,包括header_image()函数和get_custom_header()函数的用法讲解,需要的朋友可以参考下
点击排行