Ações em massa no WordPress 4.7

O WordPress 4.7 vai ser lançado em Novembro de 2016 e com ele está chegando uma novidade muito interessante. As ações em massa vai se tornar nativa do WordPress, agora você vai poder criar várias ações em massa personalizada sem a necessidade de baixar plugins para isso. A novidade foi anunciada por Eric Andrew Lewis, no blog Make WordPress, e no blog da comunidade wpbrasil.

acoesemmassa

As ações em massa vai permitir por exemplo criar o envio de email para todos os posts marcados como mostra o exemplo a baixo.

/**
 * Registra a ação em massa personalizada
 * utilizando o filtro bulk_actions-{screen_id}
 *
 * @param  array $actions Ações em massa.
 * @return array
 */
function my_register_post_bulk_actions( $actions ) {
    // Adicionando nossa nova ação em massa
    // com o ID "send_by_email" e título "Enviar por e-mail".
    $actions['send_by_email'] = __( 'Enviar por e-mail', 'textdomain' );
 
    return $actions;
}
 
add_filter( 'bulk_actions-edit-post', 'my_register_post_bulk_actions' );
 
/**
 * Lida com as ações em massa personalizadas
 * utilizando o filtro handle_bulk_actions-{screen_id}
 *
 * @param  string $redirect_to URL para redirecionar.
 * @param  string $action  	ID da ação em massa.
 * @param  array  $post_ids	Conjunto de IDs dos posts.
 * @return string
 */
function my_post_bulk_action_handler( $redirect_to, $action, $post_ids ) {
    // Verifica se é o ID da nossa ação em massa
    // e se não for return $redirect_to.
    if ( 'send_by_email' !== $action ) {
        return $redirect_to;
    }
 
    // Processa a ação em massa "send_by_email"
    // para todos os posts selecionados.
    foreach ( $post_ids as $post_id ) {
        // Código aqui processando a ação em massa.
    }
 
    // Retorna de link adicionando o total de posts que foram
    // processados nesta ação em massa usando /?bulk_emailed_posts=X
    return add_query_arg( 'bulk_emailed_posts', count( $post_ids ), $redirect_to );
}
 
add_filter( 'handle_bulk_actions-edit-post', 'my_post_bulk_action_handler', 10, 3 );
 
/**
 * Exibe mensagens sobre a nossa ação em massa personalizada
 * utilizando o action "admin_notices".
 */
function my_bulk_action_admin_notice() {
    if ( ! empty( $_REQUEST['bulk_emailed_posts'] ) ) {
        $total = intval( $_REQUEST['bulk_emailed_posts'] );
 
        printf( '<div id="message" class="updated fade">' .  _n( '%d post foi enviado por e-mail.', '%d posts foram enviados por e-mail.', $total, 'textdomain' ) . '</div>', $total );
    }
}
 
add_action( 'admin_notices', 'my_bulk_action_admin_notice' );

Ou até mesmo baixar todos os posts selecionados em formato PDF.  E não para por aí, segue uma lista básica do que você poderia criar com essa ações em massa:

* Enviar posts selecionados por e-mail;
* Exportar posts selecionados em PDF;
* Colocar em rascunho todos os posts das categorias selecionadas (isso na página de categorias no painel administrativo);
* Mudar o grupo de todos os usuários selecionados (na página de usuários no painel administrativo).

E dá para fazer muito mais, quem vai determinar o limite é você mesmo. Então aguarde esse novo recurso do WordPress 4.7 e seja feliz assim como a comunidade WordPress.

Você pode sugerir tópicos para que eu possa está postando e ajudando não só a você mas a muitas pessoas que podem estar querendo saber mais sobre um determinado assunto. Para isso basta comentar aqui que eu irei providenciar com muito carinho um post sobre assuntos sugeridos por você.

Espero que tenham gostado e até semana que vem com mais um post.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *