总是有朋友问起,虽然网上搜一下就能找到,不过问多了就觉得有点回答麻烦,干脆写个文章以后可以直接扔文章地址。
我只说步骤,不解析原理,需要了解的朋友可以去我这代码源出处 qiqiboy.com 搜索一下。
> 示例页面:点击
1. 上传一个 16×16 大小的图片作为木有 favicon.ico 的网站默认 ico,把图片上传到所用主题的 images 目录下,这里示例中默认 ico 图片是 links_default.gif
2. 复制一份你主题的 page.php,改名为 page-links.php
3. 在 page-links.php 找到文章内容输出函数 <?php the_content(); ?>,在其下面加入下面的代码,注意看代码注释:
<div class="page-links"> <h3>页内链接</h3> <ul> <?php $default_ico = get_template_directory_uri().'/images/links_default.gif'; //默认 ico 图片位置 $bookmarks = get_bookmarks('title_li=&orderby=rand'); //全部链接随机输出 //如果你要输出某个链接分类的链接,更改一下get_bookmarks参数即可 //如要输出链接分类ID为5的链接 title_li=&categorize=0&category=5&orderby=rand if ( !empty($bookmarks) ) { foreach ($bookmarks as $bookmark) { echo '<li><img src="', $bookmark->link_url , '/favicon.ico" onerror="javascript:this.src=\'' , $default_ico , '\'" /><a href="' , $bookmark->link_url , '" title="' , $bookmark->link_description , '" target="_blank" >' , $bookmark->link_name , '</a></li>'; } } ?> </ul> </div>
4. 为了好看点,你可以给 page-links 这个class定义一下样式,下面是我的主题所用样式,可以参考一下:
.page-links{overflow:hidden;margin:0 0 24px;padding:0;} .page-links h3{border-bottom:1px solid #bfbebe;text-align:center;margin:0;} .page-links ul{margin:0;padding:5px 0 0 0;} .page-links ul li{float:left;width:150px;line-height:16px;height:16px;margin:5px 5px 0;padding:0;list-style-type:none;} .page-links ul li:hover{background:#f2f2f2;} .page-links ul li img{width:16px;height:16px;margin:0 5px -2px 0;padding:0;border:none;}
5. 建立一个页面,别名(slug)为 links 即可。
完!
zww
赏
oooo
or
- 本文标题:WordPress: 带 favicon.ico 显示的友情链接自定义页面
- 本文链接:https://zww.me/archives/25533
- 发布时间:2011年10月15日 10:18
- 版权声明:除非注明,文章均为 zwwooooo 原创,转载请以链接形式标明本文地址!
杀勒个发 —_—!
@林木木
蹭沙发。。。。。。
恩,这个方法不错~
前排,既然是现成的,那我也要加上(懒啊- -
@A.shun
你是木有时间……
这个就全部都是一样的图标了
@无冷
哪里会全部一样?没有ico的才会显示默认的
听说这个样影响速度么。
@Demon
会,但这个页面访问的人不多的
盼星星盼月亮我终于盼到了Z大的技术文
@有点蓝
唉,文囧啊
你更改了固定链接模式?
@有点蓝
啥?
我记得你以前的文章链接都是自动翻译的英文啊,就是slug,现在成了数字了。难道我记错了?
@有点蓝
从我用WP时就是数字,所以绝对是你记错了,或者把我当某人了。
@zwwooooo
那是我以前没注意啊,潜意识中认为大师级的都用slug呢,所以我才改了slug
@有点蓝
厄,你是怎样把评论挤到第3嵌套的?我这最多2级的,囧rz
@zwwooooo
哈哈 有奇观呀 我就是点了个“reply”而已
@ 有点蓝
因为当时我是菜鸟,所以就一错再错了,反正没啥问题,而且我一直不怎么鸟SEO。
@有点蓝
偶尔会出错,囧rz
所以还是用谷歌的favicon缓存比较好, 省去onerror的判断, 而且经过处理可以做到完全前端输出, 后台反正越省事越好.
@phoetry
对,我没去换和找,你有空扔一个到我邮箱,我不用去找了
@zwwooooo
好的...
很早就用上了,我直接用的原始default图标,用缓存好点
@hzlzh
缓存就速度点
整上是漂亮些
@yesureadmin
装x用的
世界上本没有问题,问的人多了,也就有了问题
@郎中中
本来不想写的,问的人多了,也就写了
其实这个效果还不错,但还是不弄了
@寂静
这个不是必须的,没事玩儿的功能
不错,呵呵。以后用得到。
wp_list_bookmarks 的show_images 参数不能输出后台添加的链接图像吗?
@阅微博客
可以吧
大步要改链接了?那可记得一定要把我加上哦。
ico我的一开始就加上了的。
@wmtimes
啥?
@zwwooooo
打错了一个字。是大叔!
@wmtimes
我只是把方法贴出来,链接还是一样,要加只能加 zww.me/links 里面
学习了......
favicon.ico 前方的反斜杠应该去掉、、因为输出的链接已经带反斜杠了、、
@Kars
哦,这个没注意,因为现示正常……
我回去试试,好像好复杂啊
@powerson
不复杂吧,都是copy而已
又是一个技术文章 哈哈 我老来翻你的老帖子
@软件风暴
难得写了,
这个不错哦,上次遇到过一个用google那个连接,经常无法显示。你这个如果ico图标不在根目录不就显示默认了吗