我正在尝试将Pinterest的nopin=“nopin”HTML属性添加到我博客上的评论头像图像标签中。下面是我在每条评论上调用虚拟形象的功能:
get_avatar($comment, 50, vol_random_image())
vol\\u random\\u image()仅在评论者没有Gravatar的情况下从数组中选择图像。
我知道get\\u avatar有一个$alt属性,但这只设置了一个alt标签,对吗?如何添加此自定义HTML标记?
函数的完整代码:
echo "<li ", comment_class(), " id=\\"li-comment-", comment_ID(), "\\">\\n
\\t<article id=\\"comment-", comment_ID(), "\\" class=\\"comment\\">\\n
\\t\\t<footer>\\n
{$tab3}<div class=\\"comment-author vcard\\">\\n
{$tab3}\\t<div class=\\"comment-avatar\\">\\n",
get_avatar($comment, 50, vol_random_image()),
"{$tab3}\\t</div>\\n
{$tab3}</div>\\n" .
(($comment->comment_approved == \'0\') ?
sprintf("{$tab3}<em>") . __(\'Your comment is awaiting moderation.\', \'volatyl\') . sprintf("</em><br />\\n") :
\'\') .
"{$tab3}<div class=\\"comment-meta commentmetadata\\">\\n{$tab3}\\t" .
sprintf(\'<cite class="fn">%s</cite>\', get_comment_author_link()) .
"\\n{$tab3}\\t<div class=\\"comment-date\\">\\n
{$tab3}\\t\\t<a href=\\"", esc_url(get_comment_link($comment->comment_ID)), "\\"><time pubdate datetime=\\"", comment_time(\'c\'), "\\">";
最合适的回答,由SO网友:Brad Dalton 整理而成
您可以使用get_avatar
筛选以修改图像标记的输出并添加HTML属性
return apply_filters( \'get_avatar\', $avatar, $id_or_email, $size, $default, $alt );
$avatar : Image tag for the user\'s avatar.
SO网友:Bryan Willis
答案
get_avatar($comment, 50, vol_random_image(), \'\', array(\'extra_attr\' => \'nopin="nopin"\'));
解释请看get_avatar
功能:
echo get_avatar( $id_or_email, $size, $default, $alt, $args );
查看此函数,您会注意到
parameter 允许的是
$args
, 它本质上允许您更改除
$id_or_email
,
$size
,
$default
, 和
$alt
.
以下是可用的其他参数listed on the codex page:
size
height
width
default
force_default
rating
scheme
class
force_display
extra_attr
和extra_attr
参数记录如下:
extra_attr
  
(string) (可选)要插入IMG元素的HTML属性。未消毒
  ;默认值:空。
<小时>
How to implement:
不幸的是,据我所知,在web上没有实现
extra_attr
或上述任何其他附加参数。此外,还有
only one WPSE question 我发现甚至有人提到或询问过这些。如果你像我一样,大多数文档(如我上面发布的内容)对你来说都是无用的,除非附有一个示例。。。
一零
<?php
$atts = array(
\'extra_attr\' => \'nopin="nopin"\',
\'class\' => \'media-object img-rounded\'
);
if ( 0 != $args[\'avatar_size\'] ) echo get_avatar( $comment, $args[\'avatar_size\'], \'\', \'\', $atts );
?>
上面将输出添加以下属性的评论者化身img标签:nopin="nopin"
class="media-object img-circle"
此示例为您提供了所需的属性disable pinning Pinterest上的头像图像。此外,它还显示了如何添加额外的类,以便在需要为某些图像(在本例中为注释图像)设置样式时使用。
或者,您可以使用get_avatar filter 如果需要,可以过滤整个html代码。这通常是插件作者想要的方法。
鉴于这并没有很好的文档记录,而且似乎是很多人都想知道的一个功能,我决定创建一个插件,让您在帖子、小部件、菜单等的短代码中实现这一点。它可以下载here on Github.