我需要帮助按字母顺序对“我的网站”进行排序

时间:2011-11-30 作者:Sam

我在“我的网站”页面上显示了40多个网站,其中包含更多计划。不幸的是,WordPress没有按字母顺序对它们进行排序,这使得在日常更新和维护期间从一个站点移动到另一个站点很痛苦。我尝试添加

asort($blogs);
至wp管理员/我的网站。php,但这也没有帮助。不管怎样,我宁愿在函数中使用过滤器。而不是修改核心文件。使问题更加复杂的是,该列表被分为四列,虽然水平字母顺序将是一个巨大的改进,但垂直(按列)会好得多。

我已经为这个问题寻找了一段时间的答案,结果是空的,所以如果有任何帮助,我将不胜感激。(我的PHP非常基础,因此如果您能说出答案,我将不胜感激。)

2 个回复
最合适的回答,由SO网友:Otto 整理而成

简单一点。

<?php
/*
Plugin Name: Sort My-Sites
Description: Sorts the My Sites listing on both the page and in the 3.3 admin bar dropdown
Author: Otto
*/

add_filter(\'get_blogs_of_user\',\'sort_my_sites\');
function sort_my_sites($blogs) {
        $f = create_function(\'$a,$b\',\'return strcasecmp($a->blogname,$b->blogname);\');
        uasort($blogs, $f);
        return $blogs;
}
编辑:如果您想要PHP 7版本:

add_filter(\'get_blogs_of_user\', function( $blogs ) {
    uasort( $blogs, function( $a, $b ) { 
        return strcasecmp( $a->blogname, $b->blogname );
    });
    return $blogs;
});

SO网友:Hooman Askari

此插件也可以完成此任务:

Reorder My Sites

用于WordPress多站点。按字母顺序重新排列管理栏中的“我的网站”下拉菜单。它使主博客保持在顶部。

结束

相关推荐

Multisite questions

关于WP multisite,我有几个问题,希望广泛使用过它的人能够提供帮助:是否可以在多个不同的域上管理多个WP站点</如何管理插件,有些插件我想在所有网站上使用,但有些插件我只想在某些网站上使用。还有,每个插件设置会发生什么变化,它们是否会全面推出</更新-如何对每个站点的插件和WP本身进行管理