Como permitir upload de arquivos svg e outras extensões no WordPress

Elton Disner
Atualizado em 06/2024
Como permitir upload de arquivos svg e outras extensões no WordPress

Por padrão, o WordPress permite o upload de apenas algumas extensões de arquivos. No entanto, você pode estender essa funcionalidade para incluir formatos não permitidos, como SVG e WebP, sem a necessidade de plugins. Para isso, basta adicionar uma função no arquivo functions.php do seu tema.

Aqui está o código necessário para permitir o upload de arquivos com extensões SVG e WebP no seu WordPress, incluindo a sanitização de arquivos SVG:

// Como permitir upload de arquivos svg e outras extensões no WordPress

Explicação do Código

  1. custom_mime_types($mimes):
    • Adiciona novos tipos MIME à lista de tipos permitidos pelo WordPress.
    • $mimes['svg'] = 'image/svg+xml': Adiciona suporte para arquivos SVG.
    • $mimes['webp'] = 'image/webp': Adiciona suporte para arquivos WebP.
  2. add_filter(‘upload_mimes’, ‘custom_mime_types’):
    • Adiciona a função custom_mime_types ao filtro upload_mimes, permitindo que o WordPress reconheça esses novos tipos de arquivo durante o upload.
  3. sanitize_svg($svg):
    • Lê o conteúdo do arquivo SVG para garantir que ele seja seguro.
  4. add_filter(‘wp_handle_upload_prefilter’, function($file):
    • Verifica se o arquivo sendo carregado é um SVG.
    • Se for um SVG, sanitiza seu conteúdo antes do upload, garantindo que nenhum código malicioso seja incluído.

Considerações Importantes

  • Segurança: Sanitizar SVGs é crucial porque eles podem conter código malicioso. A função sanitize_svg ajuda a mitigar esse risco ao garantir que apenas o conteúdo do arquivo SVG seja carregado.
  • Compatibilidade: Verifique se seu tema e plugins são compatíveis com os novos tipos de arquivo para evitar problemas de exibição ou funcionalidade.

Com essa modificação, você pode fazer upload de arquivos SVG e WebP no seu WordPress de forma segura, ampliando as possibilidades de mídia no seu site sem depender de plugins adicionais.

Hey, compartilha vai!

Publicado por:
Desenvolvedor apaixonado por programação, tecnologia e ciência. Comecei a estudar programação no final da era MS-DOS trabalhei com dBASE III e COBOL Orientado a Objetos, isso antes da interface gráfica e do mouse que conhecemos hoje!
BLOG
Blog com dicas e ideias sobre programação e Web Designer WordPress