WordPress中用于获取及自定义头像图片的PHP脚本详解

get_avatar()(获取头像)
get_avatar() 函数用来获取置顶邮箱或许用户的头像代码,在评论列表中十分罕用。

这个函数提供一个 get_avatar 过滤器,用来过滤头像的 Html 代码(img 标签)。

假如在后盾 “设置” 的 “探讨” 里封闭 “显示头像选项” 则前往 False.

用法

get_avatar( $id_or_email, $size, $default, $alt );

参数

$id_or_email

(整数 | 字符串 | 对象)(必需)用户的 ID;邮箱;评论或许用户的对象。假如在循环中能够应用 get_the_author_meta( 'ID' ) 函数调用以后文章的作者。

默许值:None

$size

(整数)(可选)头像的尺寸,**为 512,单位为像素(px)。

默许值:96
get_avatar()(获取头像)
$default

(字符串)(可选)假如没有头像前往的图片,默许为 “神秘人”,能够是图片 URL.

默许值:空字符串(神秘人)

$alt

(字符串)(可选)头像 img 标签的 alt 属性内容。

默许值:False

前往值

(字符串 | 布尔)前往一个头像的 img 标签,假如在后盾 “设置” 的 “探讨” 里封闭 “显示头像选项” 则前往 False.

例子

评论列表:

<?php echo get_avatar( $GLOBALS['comment'] ); ?>

循环,获取以后文章作者头像:

<?php echo get_avatar( get_the_author_meta( 'ID' ), 32 ); ?>

自定义邮箱:

<?php echo get_avatar( '[email protected]', 32, '', '自定义邮箱' ); ?>


自定义头像图片的 alt 标签
WordPress 默许应用的是 Gravatar 头像,经过 get_avatar() 函数调用,普通用来在调用评论的时分应用。

利用 get_avatar() 函数的第四个属性 $alt 能够设置前往代码的 alt 标签,然而大少数人在应用的时分都不会去设置,也就变成了空白。

搜寻引擎的爬虫是无奈读取图片上到底是什么内容的,只能靠它的 alt 标签,没有了 alt 标签的图片,对 SEO 是十分不好的。

假如想要给一切的头像都对立加上一个 alt 标签,能够把下边的代码放到主题的 functions.php(理解更多) 文件。

/**
  *WordPress 自定义头像图片的 alt 标签
  *依据不同的人生成不同的 alt 标签
  *http://www.endskin.com/avatar-alt/
*/
function Bing_avatar_alt( $avatar ){
  $alt = 'Gravatar 头像';//alt 标签的内容
  $before = strpos( $avatar, "alt='" );
  $after = strpos( $avatar, "'", $before );
  if( $before === false || $after === false ) return $avatar;
  $alt = esc_attr( $alt );
  return substr( $avatar, 0, $before ) . "alt='$alt" . substr( $avatar, $after + strlen( "'" ) );
}
add_filter( 'get_avatar', 'Bing_avatar_alt' );

这样就行了,留意修正代码里的 $alt 变量为你要修正成的 alt 标签内容。

依据不同的人生成不同的 alt 标签

假如要依据不同的人搁置不同的 alt 标签能够用下边的例子代码:

/**
  *WordPress 自定义头像图片的 alt 标签
  *http://www.endskin.com/avatar-alt/
*/
function Bing_avatar_alt( $avatar, $id_or_email ){
  if( $id_or_email == '[email protected]' || $id_or_email === 1 ){
    $alt = '博主 Gravatar 头像';//博主的 alt 标签内容
  }else{
    $alt = 'Gravatar 头像';//一般访客的 alt 标签内容
  }
  $before = strpos( $avatar, "alt='" );
  $after = strpos( $avatar, "'", $before );
  if( $before === false || $after === false ) return $avatar;
  $alt = esc_attr( $alt );
  return substr( $avatar, 0, $before ) . "alt='$alt" . substr( $avatar, $after + strlen( "'" ) );
}
add_filter( 'get_avatar', 'Bing_avatar_alt', 10, 2 );

假如曾经设置 alt 标签则不交换

假如你需求在曾经设置 alt 标签的内容(get_avatar() 函数的 $alt 属性)则不交换的时分能够用下边的代码:

/**
  *WordPress 自定义头像图片的 alt 标签
  *假如曾经设置 alt 标签则不交换
  *http://www.endskin.com/avatar-alt/
*/
function Bing_avatar_alt( $avatar, $id_or_email, $size, $default, $alt ){
  if( !empty( $alt ) ) return $avatar;
  $alt = 'Gravatar 头像';//alt 标签的内容
  $before = strpos( $avatar, "alt='" );
  $after = strpos( $avatar, "'", $before );
  if( $before === false || $after === false ) return $avatar;
  $alt = esc_attr( $alt );
  return substr( $avatar, 0, $before ) . "alt='$alt" . substr( $avatar, $after + strlen( "'" ) );
}
add_filter( 'get_avatar', 'Bing_avatar_alt', 10, 5 );


以上就是安达网络工作室关于《WordPress中用于获取及自定义头像图片的PHP脚本详解》的一些看法。更多内容请查看本栏目更多内容!

本文相关话题: WordPress 头像 PHP PHP编程
版权声明:本文为 安达网络工作室 转载文章,如有侵权请联系我们及时删除。
相关文章
WordPress中J.parentNode为空或不是对象的处理办法

通过一番考察,发现插件 flash-video-player 里的 swfobject.js 文件里也有这个J.parentNode调用,所以和WP...

wordpress 主动在注释内容后增加内容

但在制造主题的时分,每个用户的需要都不同,而且你也不可能在文章下方增加太多的内容。因而让用户能自定义...

优化WordPress数据库晋升网站运转速度

WordPress的文章、评论等很少数据都是寄存在数据库的,所以搭建wordpress网站的工夫,网站的空间不需求多大...

wordpress中短代码生效处理方法

在以前的代码中,咱们仅仅应用add_shortcode函数来把短代码注册到wordpress中,在文章页应用the_content来显...

WordPress中自定义后盾治理界面配色计划的小技巧

WordPress 3.8 开端的全新设计的后盾支持多颜色抉择,默许有八种十分精巧的配色,能够让用户本人抉择。 对...

WordPress后盾中完成图片上传性能的实例解说

图片上传 文件预备:新建php文件,我用默许主题Twenty Ten来测试,首先在这个主题的文件夹下新建一个文件-m...

需求提交

客服服务