Você já se perguntou se havia uma maneira de criar automaticamente imagens em grayscale no WordPress quando você as carrega? Bem, o tempo de maravilha acabou. Neste artigo, mostraremos como você pode usar algumas ferramentas simples de manipulação de imagens do PHP e funções do WordPress para imagens automaticamente em escala de cinza após o upload. Você pode usar imagens em escala de cinza para passar o mouse, controles deslizantes, galeria ou qualquer outra coisa que você quiser.
A primeira coisa que você precisa fazer é abrir o arquivo functions.php do seu tema e adicionar o seguinte código:
add_action ('after_setup_theme', 'themename_bw_size'); função themename_bw_size () { add_image_size ('themename-bw-image', 100, 100, true); }
O código acima simplesmente adiciona um tamanho de imagem adicional para o remetente. O tamanho está definido para 100 x 100px com um corte rígido. Você pode alterar as dimensões de acordo com suas necessidades. Depois de ter feito isso, você precisa adicionar o seguinte código:
add_filter ('wp_generate_attachment_metadata', 'themename_bw_filter'); função themename_bw_filter ($ meta) { $ file = wp_upload_dir (); $ file = traceingslashit ($ file ['path']). $ meta ['sizes'] ['nome_mênico-bw-image'] ['arquivo']; lista ($ orig_w, $ orig_h, $ orig_type) = @getimagesize ($ file); $ image = wp_load_image ($ file); imagefilter ($ image, IMG_FILTER_GRAYSCALE); switch ($ orig_type) { caso IMAGETYPE_GIF: imagegif ($ image, $ file); pausa; caso IMAGETYPE_PNG: imagepng ($ image, $ file); pausa; caso IMAGETYPE_JPEG: imagejpeg ($ image, $ file); pausa; } retornar $ meta; }
O código acima mostra praticamente o uploader para criar um tamanho extra da imagem que você carregou. Coloque-o no tamanho que você especificou no passo anterior. Em seguida, aplique o filtro de imagem: Grayscale.
Se você estivesse fazendo isso para as miniaturas da sua publicação, então você pode exibi-lo assim no seu tema:
Se você quiser fazer isso por um anexo específico, então você pode usar a função wp_get_attachment_image.
Nota: Você deve mudar o nome para o nome do seu tema.
Todos os créditos para este truque impressionante vão para Otto.