如何给WordPress添加友情链接页面并自动获取网站favicon.ico图标?

我曾经给表白驿站更换过几次主题,每次更换都会把网站的一些功能弄丢,就拿友情链接来说,我已经快一年没有过问了,今天终于再次给表白驿站加上了友情链接功能,顺便把教程分享给大家

絮语

友情链接是外链的一种,我们都知道外链的作用是引蜘蛛传递权重,那么友情链接更是如此。给网站添加友链可以增加网站间的互访活动,如果与流量高的网站交换友情链接还可以给网站带来一定的流量。

教程开始

最终效果如下,也可以点击这里查看效果:QQ截图20170616012106
开始之前先补充一下,wordpress4.7以后的版本后台默认是没有链接管理菜单的,需要我们自己动手代码实现,将下面的这句代码添加到主题的functions.php里即可,

add_filter('pre_option_link_manager_enabled','__return_true');

注意:一定要在 ?> 前添加上述代码。如果报错,请把标点符号改成英文标点符号。这样一来,后台立即显示出了链链接管理菜单。

1.准备一张64×64像素的图片作为没有 favicon.ico 的网站默认 ico,把图片上传到主题的 images 目录下,这里我用图片 default.gif 来做个例子。

2.复制一份主题的 page.php,改名为 page-links.php,各主题的页面模板php文件命名规则不一定都一样,这里因主题而异
3.先把 page-links.php 的头部注释申明部分改一下,否则识别不出来,这里也因主题而异,具体可以对比多个模板文件的格式修改7`7BBKWOWB`8J)5}H34BIIO

4. 在 page-links.php 找到文章内容输出函数 ,在其下面加入下面的代码:

';
		foreach ($bookmarks as $bookmark) {
			echo '
  • '; $url = $bookmark->link_url . "/favicon.ico"; if( @fopen( $url, 'r' ) )//判断网站ico是否存在,须配置php.ini开启allow_url_fopen,否则会报错 { echo ''; } else{ echo ''; } echo ''. $bookmark->link_name .'
  • '; } echo ''; } ?>

    保存文件 page-links.php 并上传到主题根目录page目录(因主题而异),
    5.接下来给class属性link-content定义css样式,否者的话排版挺糟糕的,以下代码可以供你参考一下:

    /*友情链接页面样式*/
    .link-content li{float:left;text-align: center;width: 100px;font-size:12px;margin-bottom:10px}
    .link-content li img{width:64px;height:64px;border-radius:100%;margin-bottom:5px;transition:0.5s;-webkit-transtion:0.5s}
    .link-content li span{display:block}
    .link-content li:hover img{transform:rotate(360deg);-webkit-transform:rotate(360deg);}
    .link-content {list-style:none !important;}
    

    6.后台新建一个页面,选择模板为 links 即可,之后就可以告功了,访问一下,我们在链接里添加的网址连着ico图标一起被显示出来了

    延伸阅读

    1.wordpress后台没有链接管理如何添加友链?
    2.WordPress友情链接 wp_list_bookmarks() 函数用法详解