Precisa de ajuda para classificar "Meus Sites" em ordem alfabética

9

Tenho mais de 40 sites sendo exibidos na página "Meus sites" com mais planejados. Infelizmente, o WordPress não os classifica em ordem alfabética, e isso torna difícil mudar de site para site durante atualizações e manutenção de rotina. Eu tentei adicionar

asort($blogs);

para wp-admin / my-sites.php, mas isso também não ajuda. E, independentemente disso, prefiro fazer isso usando um filtro em functions.php em vez de modificar um arquivo principal. Tornando a questão ainda mais complexa é o fato de a lista ser dividida em quatro colunas e, embora uma ordem alfabética horizontal seja uma grande melhoria, a vertical (por coluna) seria muito, muito melhor.

Estou procurando respostas para isso há um tempo e estou vazio, então qualquer ajuda seria apreciada. (Meu PHP é bastante básico, então a resposta seria definitivamente bem-vinda.)

Sam
fonte
É não recomendado para outros do que wp-config.php arquivos WordPress mudança do núcleo.
Pontus Abrahamsson
@PontusAbrahamsson, foi o que ele disse no segundo parágrafo.
#

Respostas:

12

Facil.

<?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;
}
Otto
fonte
11
Uau, esse é exatamente o tipo de solução que eu esperava: limpo e bonito, e não modifica os arquivos principais. Funciona perfeitamente. Definitivamente não é algo que eu poderia ter pensado. Muito obrigado Otto!
Sam
11
atualização para o PHP 7.2: function sort_my_sites ($ blogs) {$ f = function ($ a, $ b) {return strcasecmp ($ a-> nome do blog, $ b-> nome do blog); }; uasort ($ blogs, $ f); retornar $ blogs; } add_filter ('get_blogs_of_user', 'sort_my_sites');
Chris Chalmers
3

Este plugin também faz o trabalho:

Reordenar meus sites

Para WordPress Multisite. Reordena o menu suspenso Meus Sites na Barra de Administradores em ordem alfabética. Ele mantém o blog principal no topo.

Hooman Askari
fonte