Adicione conteúdo às telas admin de /wp-admin/plugin-install.php

4

Gostaria de adicionar algum conteúdo externo às informações do plug-in exibidas nas telas /wp-admin/plugin-install.php admin.

/wp-admin/plugin-install.php chama o seguinte:

$wp_list_table = _get_list_table('WP_Plugin_Install_List_Table');

E se eu invadir esse arquivo principal como teste, posso adicionar o conteúdo, quero, OK.

No entanto, como novo desenvolvedor do WP, estou realmente lutando para ver como posso adicionar esse conteúdo por meio de um plug-in.

class WP_Plugin_Install_List_Table estende WP_List_Table , então não acho que eu possa estender isso ainda mais.

Existe uma maneira de adicionar conteúdo por meio de um plug-in a essas telas?

    
por dbm44 17.10.2013 / 18:19

1 resposta

3

Sem estender a turma, o que pode ser feito é adicionar um link de ação personalizada:

add_filter( 'plugin_install_action_links', 'action_links_wpse_119218', 10, 2 );

function action_links_wpse_119218( $links, $plugin )
{
    if( isset( $_GET['tab'] ) )
    {
        switch( $_GET['tab'] )
        {
            case 'featured':                                         
                $links['my-action'] = "Tested up to <a href='#'>{$plugin['tested']}</a>";
            break;                                                   
            case 'popular':                                          
                $links['my-action'] = "Requires <a href='#'>{$plugin['requires']}</a>";
            break;                                                   
            case 'new':                                              
                $links['my-action'] = "Slug <a href='#'>{$plugin['slug']}</a>";
            break;                                                   
        }
    }
    return $links;
}

Eentão,vocêpodecontinuaramoveroelementocomjQuery:

$('.move-me').each(function(){/*your_magic();*/});

Esselinkpersonalizado,Minhavisualização,éadicionadocom:

add_filter('views_plugin-install','views_wpse_119218');functionviews_wpse_119218($views){$views['my-view']='<ahref="#">My view</a>';
    return $views;
}

Isso seria usado para criar sua própria tela / tabela personalizada com add_action( 'load-plugin-install.php', 'callback' ) .

    
por brasofilo 18.10.2013 / 07:16