问题
我使用的Memory主题,在添加友链时无法自定义头像
据作者的介绍,只能在备注里填写邮箱地址来调用gravatar头像
这样就很不合适,因为不是每个人都用gravatar,而且添加的也不一定是友链
然后我看了下友链页面的代码后,不过因为我不会php,所以只能按着原来的代码来改,结果给我改成功了
原始代码
只截取了核心部分
<ul> <?php $bookmarks = get_bookmarks('orderby=rand&category_name=' . $linkcat->name); if ( !empty($bookmarks) ) { foreach ($bookmarks as $bookmark) { echo '<li><a class="no-des" href="' . $bookmark->link_url . '" title="' . $bookmark->link_name . '">'; if($bookmark->link_notes!=null && $bookmark->link_notes!='') echo '<img src="'.get_avatar_url($bookmark->link_notes).'" alt="'.$bookmark->link_name.'" class="avatar" / >'; else echo '<img src="'.get_template_directory_uri().'/img/comment-avatar.png" alt="'.$bookmark->link_name.'" class="avatar" / >'; echo '<div class="link-text"><span class="link-title">'.$bookmark->link_name.'</span><p class="link-description">'.$bookmark->link_description.'</p></div>'; echo '</a></li>'; } } ?> </ul>
大概就是先判断备注是否为空,如果不为空就获取avatar头像后输出,就像作者说的。如果为空就输出默认图片comment-avatar.png
修改后代码
只截取了核心部分
<ul> <?php $bookmarks = get_bookmarks('orderby=rand&category_name=' . $linkcat->name); if ( !empty($bookmarks) ) { foreach ($bookmarks as $bookmark) { echo '<li><a class="no-des" href="' . $bookmark->link_url . '" title="' . $bookmark->link_name . '">'; if($bookmark->link_notes!=null && $bookmark->link_notes!='') echo '<img src="'.get_avatar_url($bookmark->link_notes).'" alt="'.$bookmark->link_name.'" class="avatar" / >'; elseif($bookmark->link_image!=null && $bookmark->link_image!='') echo '<img src="'.$bookmark->link_image.'" alt="'.$bookmark->link_name.'" class="avatar" / >'; else echo '<img src="'.get_template_directory_uri().'/img/comment-avatar.png" alt="'.$bookmark->link_name.'" class="avatar" / >'; echo '<div class="link-text"><span class="link-title">'.$bookmark->link_name.'</span><p class="link-description">'.$bookmark->link_description.'</p></div>'; echo '</a></li>'; } } ?> </ul>
我的思路是在输出默认图片前再加一个elseif判断,判断图像地址是否为空。如果不为空就输出图像地址,为空就输出默认图片。
所以优先级是
- 如果在高级->备注中填写了友链的邮箱地址,则默认使用其gravatar头像;
- 如果在高级->图像地址中填写了友链的图像地址,则使用其提供的图像地址作为图像来源。
- 如果上面两项均未填写,则使用默认图片。
评论
按照博主的方法修改后友联页面一片空白
Aicsuk 我的没问题啊,你看我的友情链接
neet 博主你可不可以分享一下你的友联和归档页面的原文件啊,我也用这个主题,但是我归档页面的样式始终有问题
Aicsuk 发你邮箱了,解压密码我的主域名
neet 谢啦