今天在维护友情链接的时候发现,很多站的友情链接都是随机排列的,而我的站似乎是按名称排的,就导致了英文名的站都排在前面,而有些站就一直排在最底下,这样就对他们不公平了。所以我尝试也改成随机顺序来排列友情链接。

因为我用了loper主题的友情链接边栏,所以需要到主题文件中去修改,如果用的是主题自带的友情链接边栏,那要去wp的文件中修改:

class WP_Widget_Links extends WP_Widget {
...
...
		wp_list_bookmarks(apply_filters('widget_links_args', array(
			'title_before' => $before_title, 'title_after' => $after_title,
			'category_before' => $before_widget, 'category_after' => $after_widget,
...
...
		)));
	}

找到wp_list_bookmarks()这个方法。那么loper主题也类似,我在loper1.3\functions\loperwidget.php找到了友情链接边栏的代码:

/////////////随机文章////////////

class loper_widget5 extends WP_Widget {
...
...
		<ul  class="cate2row link2">
			<?php wp_list_bookmarks('title_li=&categorize=0'); ?>
		</ul>
...

一开始一直没找到,因为他的注释是随机文章,写错的注释真是害人不浅。

既然找到了这个函数,那么自然要学习一下他的参数了,具体文档可以参考官方的,那我在这里只挑跟排序有关的介绍啦:

<?php $args = array(
    'orderby'          => 'name',
    'order'            => 'ASC',

看到了吧,默认是按照名称升序来排的,当然我们可以改成rating按评分来排,或者改成rand随机排:

wp_list_bookmarks('title_li=&categorize=0&orderby=rand');

改好之后赶紧去看看效果吧。

wordpress友情链接随机排序