如何给 WordPress 网站的 Gravatar 头像添加 alt 属性?

2022年10月13日 发表评论
免费、便宜/高性价比 服务器汇总(已更新):点击这里了解

如何给 WordPress 网站的 Gravatar 头像添加 alt 属性?图片ALT属性不仅有利于搜索引擎索引图片,而且当图片无法加载的时候,会显示图片的ALT信息。WordPress文章插入图片时可以在“替代文本”中填写ALT信息,但评论中的大量Gravatar头像一般主题都没有ALT属性,其实WP以为我们预设了Gravatar头像ALT属性参数。

1、查看WP官网 Codex  get avatar  默认的可选参数:

  1. <?php echo get_avatar( $id_or_email $size $default $alt $args ); ?>

其中:$alt 就是 alt可选参数

2、打开主题评论模板,找到类似这句:

  1. <?php echo get_avatar( $comment 64 ); ?>

替换为:

  1. <?php echo get_avatar( $comment 64 '' get_comment_author() ); ?>

将评论者名称作为ALT属性。

3、如果你的主题调用评论模模块使用的函数是:

  1. wp_list_comments();

4、暂时在官网上还没找到用该函数添加ALT属性的参数(貌似WordPress默认主题ALT也是空的),只能按下面的代码拆分这个函数,然后修改。

  1. function mytheme_comment($comment $args $depth) { if ( 'div' === $args['style'] ) { $tag = 'div'; $add_below = 'comment'; } else { $tag = 'li'; $add_below = 'div-comment'; } ?> <<?php echo $tag ?> <?php comment_class( emptyempty( $args['has_children'] ) ? '' : 'parent' ) ?> id="comment-<?php comment_ID() ?>"> <?php if ( 'div' != $args['style'] ) : ?> <div id="div-comment-<?php comment_ID() ?>" class="comment-body"> <?php endif; ?> <div class="comment-author vcard"> <?php if ( $args['avatar_size'] != 0 ) echo get_avatar( $comment $args['avatar_size'] ); ?> <?php printf( __( '<cite class="fn">%s</cite> <span class="says">says:</span>' ), get_comment_author_link() ); ?> </div> <?php if ( $comment->comment_approved == '0' ) : ?> <em class="comment-awaiting-moderation"><?php _e( 'Your comment is awaiting moderation.' ); ?></em> <br /> <?php endif; ?> <div class="comment-meta commentmetadata"><a href="<?php echo htmlspecialchars( get_comment_link( $comment->comment_ID ) ); ?>"> <?php /* translators: 1: date, 2: time */ printf( __('%1$s at %2$s'), get_comment_date(), get_comment_time() ); ?></a><?php edit_comment_link( __( '(Edit)' ), ' ', '' ); ?> </div> <?php comment_text(); ?> <div class="reply"> <?php comment_reply_link( array_merge( $args array( 'add_below' => $add_below 'depth' => $depth 'max_depth' => $args['max_depth'] ) ) ); ?> </div> <?php if ( 'div' != $args['style'] ) : ?> </div> <?php endif; ?> <?php }

6、如果你的主题添加修改了默认的头像调用方式,比如使用CN或者SSl方式调用,该方法将无效。

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: