在主题制作中,wp_list_bookmarks是比较常用的WordPress函数,在主题中调用友情链接的时候,通常都要用到。下面就对这个WordPress友情链接函数wp_list_bookmarks()做一下详细的介绍。
有些时候,我们并不想要某个友情链接在全站页面都体现,而是想实现类似的效果:只在首页显示一部分的友链,然后其它的都体现在“友情链接页面”,而普通的文章页和列表页之类则是不再显示。
实现过程并不复杂,调用链接时稍微自定义一下就可以实现这样的效果,我们可以运用wp_list_bookmarks函数来实现个性化的友情链接调用。
首先,要对友情链接进行分类处理,然后使用类似下面的代码单独调用该分类的链接:<?php wp_list_bookmarks('orderby=id&categorize=0&category=2&title_li='); ?>
代码含义:显示分类id为2的所有链接,以链接的ID排序,并且不显示链接分类目录名。
需要按分类显示全部链接的地方,则可以加入以下代码调用:<?php wp_list_bookmarks('orderby=id&category_orderby=id'); ?>
wp_list_bookmarks 函数的默认参数是:'orderby' => 'name'
wp_list_bookmarks()基本用法
<?php wp_list_bookmarks( $args ); ?>
默认参数是:
<?php $args = array(
'orderby' => 'name',
'order' => 'ASC',
'limit' => -1,
'category' => ' ',
'exclude_category' => ' ',
'category_name' => ' ',
'hide_invisible' => 1,
'show_updated' => 0,
'echo' => 1,
'categorize' => 1,
'title_li' => __('Bookmarks'),
'title_before' => '<h2>',
'title_after' => '</h2>',
'category_orderby' => 'name',
'category_order' => 'ASC',
'class' => 'linkcat',
'category_before' => '<li id=%id class=%class>',
'category_after' => '</li>' ); ?>
默认情况下(没有添加任何参数)的用法:
链接被划分为不同类别,每个类别有一个名称
包含所有链接,无论是链接的分类名称还是ID
按名称排列链接列表
如果有图片,包含图片
图片和链接文本间应有空格
显示链接的描述
不显示链接等级
无限制,显示所有链接
显示所有链接
wp_list_bookmarks()参数详解
categorize
(布尔型)是否所有链接都应该显示在相应的分类目录下。
1 (true)——默认值
0(false)
category
(字符串)将要显示的链接分类目录的ID,用逗号隔开。如果没有指定分类,显示所有含有链接的链接分类。
exclude_category
(字符串)将被排除的链接分类目录的ID,用逗号隔开。默认值为 (no categories excluded)(不排除任何链接分类)。
category_name
(字符串)将要显示的链接所属分类的名称。如果没有指定分类,显示所有含有链接的链接分类。默认值为 (all Categories)(所有链接)。
category_before
(字符串)放置在每个链接分类目录前的文本。默认值为'<li id="[category id]" class="linkcat">'。
category_after
(字符串)放置在链接分类目录后的文本。默认值为'<'/li>'。
class
(字符串)链接分类列表所在类。默认值为'linkcat'。
category_orderby
(字符串)用以排列链接分类的值。有效值包括:
'name' ——默认值
'id'
'slug'
'count'
category_order
(字符串)排列的顺序,以升序或降序排列category_orderby参数值。有效值包括:
ASC ——默认值
DESC
title_li
(字符串)链接列表的标题。默认值为 '__('Bookmarks')',显示标题为“Bookmarks”(the_(' ')用于本地化。)只有将categorize设为0(false)时,才可使用该参数(否则将使用分类名称)。若将title_li设为空(0),则不显示列表标题,且链接列表不会被 <ul>, </ul>标签围绕(要确保将categorize选项设为0,以使title_li生效)。
title_before
(字符串)'categorize'值为1(true)时显示在每个链接类别前的文本,或'categorize'值为0(false)时在'title_li'中定义的文本。 默认值为'<h2>'。
title_after
'categorize'值为1(true)时显示在每个链接类别后的文本,或'categorize'值为0(false)时在'title_li'中定义的文本。 默认值为'</h2>'。
show_private
(布尔型)是否应显示某个链接分类(即使该分类被认为是私密的)。忽略管理面板的设置,显示私密链接分类(TRUE),或者不显示私密链接分类(FALSE)。
1 (true)
0(false)——默认值
include
(字符串)在结果中包含的数值型链接ID列表,各ID用逗号隔开。例如, 'include=1,3,6' 表示返回或响应ID为1、3、6的链接。如果使用include字符串,那么 category、category_name、exclude参数将被忽略。默认值为 (all Bookmarks)(所有链接)。
exclude
(字符串)将要被排除的链接的ID,各ID用逗号隔开。如 'exclude=4,12'表示不返回ID为4和12的链接。默认值为 (exclude nothing)(不排除任何链接)。
orderby
(字符串)以何顺序为链接排序。这可能是一份各个值的列表,各值由逗号隔开。默认值为'name',除非你传递' '(空)值给该参数,此时参数值为'id'。有效值包括:
'id' (WP 3.2 及以后版本使用 'link_id' )
'url'
'name' ——默认值
'target'
'description'
'owner' —— 通过连接管理器添加链接的用户
'rating'
'updated'
'rel' —— 链接关系(XFN)
'notes'
'rss'
'length' —— 链接名称的长度,范围从最短的名称到最长的名称
'rand' —— 以任意顺序显示链接
order
(字符串)根据'orderby'参数中的设置为分类目录排序(升序或降序)。有效值包括:
ASC ——默认值
DESC
limit
(整数)可以显示的最大链接数。默认值为-1(所有链接)。
before
(字符串)放置在链接前的文本。默认值为'<li>'。
after
(字符串)放置在链接后的文本。默认值为'</li>'。
link_before
(字符串)超链接代码中链接文本前的文字。无默认值。
link_after
(字符串)超链接代码中链接文本后的文字。无默认值。
between
(字符串)链接/图片与其说明之间的文本。默认值为'n'(换行)。
show_images
(布尔型)是(TRUE)否(FALSE)显示链接的图片
1 (true)——默认值
0(false)
show_description
(布尔型)是(TRUE)否(FALSE)显示链接说明。该参数用于show_images为FALSE时或未定义链接图片时。
1 (true)
0(false)——默认值
show_name
(布尔型)显示链接文本(TRUE)。该参数用于show_images为TRUE时。
1 (true)
0(false)——默认值
show_rating
(字符串)是(TRUE)否(FALSE)显示链接的级别。
1 (true)
0(false)——默认值
show_updated
(布尔型)是(TRUE)否(FALSE)显示最近更新的时间标记。
1 (true)
0(false)——默认值
hide_invisible
(布尔型)是否显示公开度为“不公开”的链接。是(TRUE)否(FALSE)遵循管理面板中的设置。
1 (true)——默认值
0(false)
echo
(布尔型)显示结果(TRUE),或将结果保留以供PHP使用(FALSE)。
1 (true)——默认值
0(false)
制作独立的WordPress友情链接页面
准备工作:
当你新建一个php文件时,要保证编码和你的主题编码一样,比如主题是utf-8,你新建的php文件也保证是utf-8编码才不会出现乱码。
本地编写时尽量不要用文本档,容易出现字符错误或者编码错误。
复制文中代码时,注意把代码中的全角符号转换成英文半角符号。
WordPress友情链接页面第一步:
新建一个php文档,命名links.php(名字可以修改)复制你主题中single.php内容进去,然后在文件顶部加入一下代码:
<?php/*Template Name: 友情链接模板*/?>
网上有好多文章写的都是复制page.php文件中的内容,我觉得这个关系不大,只要能用就行了,文章页面更合适一些!
这段代码意思就是标注这个文档名字,你在后台新建页面时,使用模板中选择就可以了!绿色汉字可以改成你想要的模板名字link或者links。
WordPress友情链接页面第二步:
这个地方要注意了,不同主题不太一样,找到文件中:
<?php the_content(); ?>
这段代码,或者类似这段代码,然后修改成获取友情链接函数如下:
<div class="alllinks"><ul>
<div class="linktitle">首页链接</div>
<?php wp_list_bookmarks('orderby=rand&categorize=0&category=15&title_li='); ?>
</ul>
</div>
其中category=15这个参数是指的你要显示的链接分类目录!可以在本文上方查看更多关于WordPress友情链接参数!
把这个php文件保存以后上传到你的主题目录中。
WordPress友情链接页面第三步:
这样一个友情链接页面就做完了,下面加入CSS美化效果,把下面代码复制到你主题的style.css中就可以了!
/*独立友情链接页面*/
.linktitle {
text-align:center;
height:25px;
font-size:18px;
background-color:#DBDBDB;
border-radius:5px;
}
.alllinks ul
{
margin-top:5px;
border:solid #D9D9D9;
list-style-type:none;
padding:1px;
border-radius:10px;
height:auto;
overflow:hidden;
}
.alllinks li
{
margin-top:5px;
height:30px;
width:150px;
padding-top:10px;
text-align:center;
list-style-type:none;
font-size:18px;
float:left;
border:dotted #EAEAEA;
margin-left:5px;
border-radius:10px;
}
.alllinks a:link{
text-decoration:none
}
.alllinks a:hover {
color:red;
}
.alllinks li:hover {
background-color:#DBDBDB;
cursor:pointer;
border-radius:15px;
}
WordPress友情链接页面第四步:
上面已经完成了wordpress友情链接模板的制作,然后进入博客后台,页面--新建页面--选择模板,这个时候选择我们刚刚制作的这个模板就可以了,保存。这样一个独立的wordpress友情链接页面就完成了!
-----------------------------
最后说一下,由于wordpress发表文章时会自动转换中英文半角符号,所以复制代码和测试时,请把中文半角符号转换成英文半角符号!
评论(0)