Início » Desenvolvimento WordPress » WordPress Admin – Como Registrar Ações em Massa
Desenvolvimento WordPress

WordPress Admin – Como Registrar Ações em Massa

Ações em massa facilitada no WordPress 4.7, que pode ser implementado funcionalidades para melhorar a manutenção do site.
dezembro de 2016 /3 min de leitura
Conteúdo escrito por humano
WordPress Admin – Como Registrar Ações em Massa

A disponibilidade de um filtro na aréa administrativa do WordPress (WordPress Admin) que execute ações em massa, sendo, em vários registros, se faz necessária automatizando processos para o administrador do site, ao invés de executar uma ação para cada registro.

Ações em massa nas Versões do WordPress

Esta funcionalidade apareceu no WordPress 3.1 alguns plugins já utilizavam para executar algumas ações em massa. Na versão WordPress 4.7 se tornou mais flexível permitindo remover itens padrões de ações em massa, registrar novas para qualquer parte da área administrativa.

Acompanhe em primeira mão tudo sobre o WordPress

Quem poderá criar estas funcionalidades?

Poderão ser criadas pelos desenvolvedores uma vez que exigirá modificação no código fonte.

Exemplificação da Funcionalidade

É bem simples a criação da ação em massa, em três passos vamos criar uma funcionalidade de envio de e-mail para todos os usuários da área administrativa selecionados.

Inserindo a funcionalidade para seleção (Botão Dropdown)

Para adicionar a opção de ação em massa no HTML, registre um callback bulk_actions-{screen-id} criando uma nova opção de seleção. Substitua o {screen_id} com o ID da área administrativa.

Vamos adicionar a funcionalidade no functions.php para ficar mais fácil o exemplo ( mais pode ser criado um arquivo para separar esta funcionalidade que é o aconselhável ),  “Email para apiki”:

add_filter( 'bulk_actions-edit-post',  'register_my_bulk_actions' );

function register_my_bulk_actions($bulk_actions) {
  $bulk_actions['email_to_apiki'] = __( 'Email to Apiki', 'email_to_apiki');
  return $bulk_actions;
}

Tratamento do envio do formulário

Registre o handle_bulk_actions-{screen_id} o filtro aguarda uma url para ser modificada que pode ser passada em $redirect_url. Permitirá exibir a notícia de sucesso ou falha ao executar a funcionalidade.

add_filter( 'handle_bulk_actions-edit-post', 'my_bulk_action_handler', 10, 3 );

function my_bulk_action_handler( $redirect_to, $doaction, $post_ids ) {
  if ( $doaction !== 'email_to_apiki' ) {
    return $redirect_to;
  }
  foreach ( $post_ids as $post_id ) {
    // Execute a ação para cada postatem
  }
  $redirect_to = add_query_arg( 'bulk_emailed_posts', count( $post_ids ), $redirect_to );
  return $redirect_to;
}

Exibindo Notícias

Podemos utilizar hooks para informar ao usuário sobre o que aconteceu. Dependendo do estado que definimos na URL.

add_action( 'admin_notices', 'my_bulk_action_admin_notice' );

function my_bulk_action_admin_notice() {
  if ( ! empty( $_REQUEST['bulk_emailed_posts'] ) ) {
    $emailed_count = intval( $_REQUEST['bulk_emailed_posts'] );
    printf( '<div id="message" class="updated fade">' .
    _n( 'Emailed %s post to Apiki.',
    'Emailed %s posts to Apiki.',
    $emailed_count,
    'email_to_apiki'
    ) . '</div>', $emailed_count );
  }
}

Conclusão

Mais uma facilidade para agregar valor ao WordPress que poderá influenciar na facilidade do usuário no painel administrativo. Na versão anterior WordPress 4.6 já tinham sido implementadas muitas funcionalidades,  WordPress 4.7 adicionou mais funcionalidades que podem ser conferidas aqui.

Qual nota você da para este artigo?
Ruim

O que você achou disso?

Clique nas estrelas

Média da classificação 0 / 5. Número de votos: 0

Nenhum voto até agora! Seja o primeiro a avaliar este post.

Excelente
Artigos Relacionados
Construa seu site WordPress sob medida com os maiores especialistas em WordPress da America Latina
Conheça a Apiki

Faça um comentário
Cadastre-se rápido

Fazer Login